当我尝试连接3个分片时,我在upsert
中运行命令MongoDB
时遇到问题。
如果我只连接一个碎片,我没有问题。
我正在使用的代码是:
ConnectionString cs("mongodb://host:pass@server1:27017,server2:27017,server3:27017", ConnectionString::ConnectionType::SYNC);
DBClientBase *conn = cs.connect( mongo_erro );
BSONObjBuilder bojUpsert;
bojUpsert.append("teste","1234567890");
bojUpsert.append("valor",123);
conn->update("xxx.xxx", Query("{teste:\"1234567890\"}") , bojUpsert.obj() , mongo::UpdateOptions::UpdateOption_Upsert);
我收到的错误是:
**terminate called after throwing an instance of 'mongo::UserException'
what(): SyncClusterConnection::update upsert query needs _id**
我正在使用Linux Mint,QT 4.8.6 + libmongo-client-dev 0.1.7-1