Ошибка: не найдены фрагменты для файла с Mongo gridFS

Ошибка сервера моего приложения, и я не могу понять, что может быть причиной проблемы. Мое приложение построено с помощью Meteor и размещено на modulus.io. Вот мои журналы приложений:

Error: no chunks found for file, possibly corrupt
    at /mnt/data/2/node_modules/mongodb/lib/mongodb/gridfs/gridstore.js:817:20
    at /mnt/data/2/node_modules/mongodb/lib/mongodb/gridfs/gridstore.js:594:7
    at /mnt/data/2/node_modules/mongodb/lib/mongodb/cursor.js:758:35
    at Cursor.close (/mnt/data/2/node_modules/mongodb/lib/mongodb/cursor.js:989:5)
    at Cursor.nextObject (/mnt/data/2/node_modules/mongodb/lib/mongodb/cursor.js:758:17)
    at commandHandler (/mnt/data/2/node_modules/mongodb/lib/mongodb/cursor.js:727:14)
    at /mnt/data/2/node_modules/mongodb/lib/mongodb/db.js:1916:9
    at Server.Base._callHandler (/mnt/data/2/node_modules/mongodb/lib/mongodb/connection/base.js:448:41)
    at /mnt/data/2/node_modules/mongodb/lib/mongodb/connection/server.js:481:18
    at [object Object].MongoReply.parseBody (/mnt/data/2/node_modules/mongodb/lib/mongodb/responses/mongo_reply.js:68:5)
[2015-03-29T22:05:57.573Z] Application CRASH detected. Exit code 8.

2 ответа

Error: no chunks found for file, possibly corrupt
at /home/developer/rundir/node_modules/mongoose/node_modules/mongodb/lib/mongodb/gridfs/gridstore.js:808:20
at /home/developer/rundir/node_modules/mongoose/node_modules/mongodb/lib/mongodb/gridfs/gridstore.js:586:5
at /home/developer/rundir/node_modules/mongoose/node_modules/mongodb/lib/mongodb/collection/query.js:164:5
at /home/developer/rundir/node_modules/mongoose/node_modules/mongodb/lib/mongodb/cursor.js:778:35

У меня было подобное происшествие, но в итоге файл, найденный в потоке чтения GFS, был фактически удален - так что в моем случае он не был поврежден, но исчез! Выше находится журнал, когда это произошло.

Скорее всего это ошибка Монго с gridfs (была исправлена)

Запись двух или более разных файлов одновременно из разных процессов узлов с помощью команды GridStore.writeFile приводит к тому, что некоторые файлы записываются неправильно (в результате получается несколько поврежденных файлов в сеточном хранилище). Завершение работы с поврежденными файлами даже при успешном завершении всех вызовов writeFile и отсутствии признаков ошибки. Время от времени writeFile завершается ошибкой с ошибкой "чанки вышли из строя", но это происходит очень редко (что-то вроде 1 сбой writeFile для 100 поврежденных файлов или более).

На основании комментариев в обсуждении проблема будет исправлена, если вы обновите mongo (файлы gridfs должны быть удалены, так как они повреждены).

Другие вопросы по тегам