EDIT:
В основном я ищу некоторые подсказки о том, как понять, какие фоновые операции выполняются на моем экземпляре MongoDB, и, возможно, уменьшить/отключить их, когда это необходимо, чтобы они не мешали запускаемым тестам. Я пробовал mongostat
и mongotop
, но ничего не нашел с ними, что помогло мне понять, какие фоновые операции запущены и что их инициирует. db.currentOp()
последовательно возвращает пустой массив при запуске до начала моих тестов.
Я регулярно запускаю тесты при разработке с помощью node (мокка, огурец). Со вчерашнего дня около 25% времени инициализации сервера не удается подключиться к mongodb со следующей ошибкой:
**Unhandled rejection MongoError: exception: cannot perform operation: a background operation is currently running for collection** somecollection
at Function.MongoError.create (/somepath/node_modules/pow-mongodb-fixtures/node_modules/mongodb/node_modules/mongodb-core/lib/error.js:31:11)
at /somepath/node_modules/pow-mongodb-fixtures/node_modules/mongodb/node_modules/mongodb-core/lib/topologies/server.js:793:66
at bound (domain.js:254:14)
at runBound (domain.js:267:12)
at Callbacks.emit (.../node_modules/pow-mongodb-fixtures/node_modules/mongodb/node_modules/mongodb-core/lib/topologies/server.js:94:3)
at null.messageHandler (/somepath/node_modules/pow-mongodb-fixtures/node_modules/mongodb/node_modules/mongodb-core/lib/topologies/server.js:235:23)
at Socket.<anonymous> (/somepath/node_modules/pow-mongodb-fixtures/node_modules/mongodb/node_modules/mongodb-core/lib/connection/connection.js:294:20)
at Socket.emit (events.js:107:17)
at readableAddChunk (_stream_readable.js:163:16)
at Socket.Readable.push (_stream_readable.js:126:10)
at TCP.onread (net.js:538:20)
Мы используем pow-mongodb-fixtures, чтобы очистить db и заполнить его некоторыми базовыми данными перед запуском тестов, где и происходит это. AFAIK ничего не изменилось, когда это началось. Любые идеи, в которых я могу даже начать исследовать источник этой ошибки?