Монго БД. Не удалось обновить запись

Я столкнулся с интересной проблемой: не могу обновить какое-либо значение в БД Mongo из оболочки. На самом деле это происходит на некоторых других БД Mongo. На моей локальной БД с той же схемой БД те же самые команды обновления работают отлично. Похоже, что после некоторых манипуляций с базой данных db стал доступен только для чтения. rs.status() команда возвращается not running with --replSet, Монго версия 2.4.9.

Куда мне обратиться, чтобы решить проблему? Спасибо!

UPD. Кажется, такие вещи случаются только в некоторых коллекциях. Другие коллекции в БД работают нормально

UPD2. Обновление cmd, которое я использую, следующее: db.userprofile.update({login: 'admin'}, {$set:{'filter.table.login':'a111'}}), Он не возвращает сообщений вообще. Но на другом Mongo DB той же версии и с той же схемой он работает без проблем и выполняет обновление.

UPD3. Команда db.getUsers() возвращает мне это: TypeError: Property 'getUsers' of object admin is not a function независимо от того, я использую администратор БД или мой собственный БД.

UPD4. Кажется, я нашел место, где может быть проблема. До сих пор я обнаружил, что могу изменять другие документы в коллекции. Так что у меня были проблемы только в одном или двух документах. Один из таких документов выглядит так (фрагмент):

"filter" : {
    "" : {
        "domain" : null,
        "type" : null
    },
    "table1" : {
        "pageNumber" : 1,
        "page1" : 10
    },
    "table2" : {
        "domain" : null,
        "login" : "",
        "page1" : 1,
        "page2" : 10
    },

По некоторым причинам пустое значение ("") было сохранено в качестве ключа. Я предполагаю, что это пустое значение может быть причиной такой ошибки. Но почему водитель Mongo не жаловался на такую ​​ситуацию во время вставки?

0 ответов

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