2016-04-05 8 views
3
bsoncxx::builder::stream::document search_builder; 

mongocxx::options::find img_find; // This speeds up the queries 

search_builder_images.clear(); 
search_builder_images << "_id" << "abc" << "data" << open_document <<"$exists" << true << close_document ; 
for (bsoncxx::document::view doc : cursor_cal) { 
    std::cout << bsoncxx::to_json(doc) << std::endl; 
} 

auto cursor_cal = dbMongo [SammlungName] .find (search_builder.view());

Hier zufällig 50-50% Chancen, bekomme ich manchmal die Ausgabe, die ich erwarte, und manchmal bekomme ich Segmentierung Fehler Fehler.

Was mache ich falsch? (Ich versuche, diesen search_builder zu erstellen, um in der mongodb Datenbank zu suchen und Dokumente zu erhalten, wo Daten existieren?)

Antwort

0

Dieses ist ein bisschen alt, aber ich hatte ein segfault Problem für den Aufbau des Dokumentes, nicht sicher, ob es was Sie ist waren konfrontiert. Ich musste die Abfrage Dokument Konstruktion in mehrere Zeilen, z. B .:

auto queryDoc = document{}; 
queryDoc << _id << "abc"; 
queryDoc << "data" << open_document; 
    queryDoc << "$exists" << true; 
queryDoc << close_document; 
auto query = queryDoc << finalize; 

Hoffen, dass dies jemand anderen hilft.