MongoDB killOp () не убивает оп. Что я делаю? - PullRequest
3 голосов
/ 16 декабря 2011
> db.currentOp().inprog.length
11587

Через несколько минут счет остается прежним. Я сделал небольшой скрипт для циклического прохождения и killOp() всех операций, которые произошли от клиента-нарушителя, но после его завершения все операции все еще выполняются.

Затем я попробовал один killOp () и проверил количество операций, и это было то же самое. Я попытался убить 10 операций, затем проверил количество операций, и оно все еще не изменилось.

Большинство запросов находятся в одной таблице, в которой содержится более 20 миллионов документов. Клиент, сгенерировавший все запросы, был прерван, но я не могу позвонить getIndexes(), чтобы проверить, есть ли неправильная конфигурация индексации в таблице, потому что этот вызов просто идет в конец очереди операций и никогда не возвращается.

Мы запускаем MongoDB на одном сервере Linux. На данный момент репликации нет.

Что мне делать?

1 Ответ

1 голос
/ 16 декабря 2011

Вы знаете, что это за опера? Проверьте журнал mongod, чтобы увидеть, перемещается ли он или есть какое-либо сообщение об ошибке. Если вы не видите никакого прогресса, я бы посоветовал вам перезапустить Mongod (не убивайте -9, нормальное уничтожение должно быть в порядке).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...