2016-10-17 9 views
0

У меня есть относительно простой пример создания oid с драйвером mongocxx. Она заключается в следующем:Неизвестный код ошибки bsoncxx :: oid

try { 
// assetId is const UInt8 * 
bsoncxx::oid id = bsoncxx::oid{std::string((const char *)assetId)}; 

} catch (const std::exception& xcp) { 
    std::cout << "-------------" << std::endl; 
    std::cout << "connection failed: " << xcp.what() << "\n"; 
    std::cout << "-------------" << std::endl; 
    return kDRMSKDServerDBAssetIDErr; 
} 

Однако я получаю: неизвестный bsoncxx код ошибки

Я понятия не имею, что я делаю неправильно.

+0

При размещении вопросов об ошибках, пожалуйста, включите * ваш вопрос * в свой вопрос. Если это ошибка сборки, скопируйте ее, как и без редактирования, в текст в текст вопроса. –

+0

Это проблема, это полная ошибка –

+1

Без [SSCCE] (http://sscce.org) сложно определить точную проблему. Однако, скорее всего, идентификатор свойства не является допустимым шестнадцатеричным идентификатором объекта. См. [Docs] (https://mongodb.github.io/mongo-cxx-driver/api/current/classbsoncxx_1_1oid.html#a48be4a43ece04c4434342c2ebb937113). Для справки, какую версию mongocxx и libmongoc вы используете? – xdg

ответ

0

Плохо обработанный OID приведет к появлению этого сообщения об ошибке, поэтому остерегайтесь их ошибочных сообщений об ошибках.

+0

Это было [исправлено в репо] (https://github.com/mongodb/mongo-cxx-driver/commit/340df1420869e647929fa00e295af0e395723d74) и будет в будущем выпуске. Если (когда) вы найдете другие плохо обработанные сообщения об ошибках, сообщите нам об этом, и мы их исправим. – xdg