Проблема позиционного оператора MongoDB
Я пытаюсь запустить следующую команду обновления с позиционным оператором.
businesses.update({ '_acl.5370b9af4a6b2a941ad3bf5e': 'read',
'rooms._id': ObjectId("5370c1ca19b56d0200b26e7f"),
_id: ObjectId("5370b9af4a6b2a941ad3bf58") },
{ '$set': { 'rooms.$.lastServiced': new Date("Thu, 15 May 2014 16:17:28 GMT") } } )
Запрос имеет 2 массива, _acl.5370b9af4a6b2a941ad3bf5e
а также rooms
, Я хочу обновить массив комнат, используя позиционный оператор, но мое обновление идет не к тому элементу в массиве комнат.
Эта проблема исчезнет, если я уберу это '_acl.5370b9af4a6b2a941ad3bf5e': 'read'
часть из запроса.
Я думаю, что Mongodb использует позицию из _acl
массив, хотя в части $set я использую rooms
массив. Это ошибка в mongodb?