Recuperar grande bolha do banco de dados Android sqlite

Eu armazenei pedaços de dados binários (protobufs) no banco de dados sqlite de um aplicativo Android sem perceber que o AndroidCursor só pode conter um máximo de 1 MB de dados. Agora sei que deveria ter armazenado esses blobs binários em arquivos e referenciado apenas os arquivos nas entradas do banco de dados sqlite.

Eu preciso atualizar o banco de dados (o aplicativo tem sido usado por um tempo) para mover esses pedaços binários para arquivos. O problema é que os dados de alguns usuários já podem ter ultrapassado o limite de 1 MB e não consigo recuperá-los do banco de dados (acessando oCursor para uma única linha que contém uma grande bolha lança umIllegalStateException: Couldn't read row 0, col 0 from CursorWindow. Make sure the Cursor is initialize before accessing data from it).

Como faço para recuperar os blobs binários que são maiores que o 1MBCursor limite que foram armazenados no banco de dados sqlite?

questionAnswers(2)

yourAnswerToTheQuestion