Используя сервер MongoDB 3.4.4 в Windows 10, следующая команда работает нормально:
db.createUser(
{
user: "Billy",
pwd : "123456",
roles :
[
{ role: "userAdmin", db : "biolomics_index" },
{ role: "dbAdmin", db : "biolomics_index" },
{ role: "readWrite", db : "biolomics_index" }
]
}
Выполнение той же команды с драйверами mongocxx 3.1.1 C ++ завершается ошибкой:
db.run_command(document{} << "createUser" << open_document <<
"user" << "Billy" <<
"pwd" << "123456" <<
"roles" << open_array <<
open_document << "role" << "userAdmin" << "db" << "biolomics_index" << close_document <<
open_document << "role" << "dbAdmin" << "db" << "biolomics_index" << close_document <<
open_document << "role" << "readWrite" << "db" << "biolomics_index" << close_document <<
close_array << close_document <<
finalize);
с ошибкой:
"createUser" имеет неправильный тип. Ожидаемая строка, найденный объект: общая ошибка сервера.
Я не могу найти синтаксис для создания правильного документа. Любая идея?