2016-04-28 74 views
2

我們在CentOS服務器上運行上下文代理,但它一直在崩潰,某些更新查詢崩潰。我們已經嘗試過版本0.26和最新的1.0.0-1,但結果是一樣的,我們也嘗試在3.0.6和3.0.7之間更改mongoDB版本,但沒有運氣。日誌並沒有給我們太多的東西,所以這就是我們在這裏問的原因。上下文代理崩潰,出現某些更新查詢

我們正在做的是發送一個約1MB大小的實體的更新,通過nginx從http調用路由。上下文代理崩潰(請參閱下面的日誌),但mongodb和其他服務繼續正常工作。

日誌文件:/var/log/contextBroker/contextBroker.log

terminate called after throwing an instance of 'mongo::MsgAssertionException' 
    what(): EOO Before end of object 

日誌文件:從contextBroker在/ var/log/messages中

Apr 28 07:15:50 gl abrt[11457]: Saved core dump of pid 11426 (/usr/bin/contextBroker) to /var/spool/abrt/ccpp-2016-04-28-07:15:49-11426 (63606784 bytes) 
Apr 28 07:15:50 gl abrtd: Directory 'ccpp-2016-04-28-07:15:49-11426' creation detected 
Apr 28 07:15:50 gl abrtd: Package 'contextBroker' isn't signed with proper key 
Apr 28 07:15:50 gl abrtd: 'post-create' on '/var/spool/abrt/ccpp-2016-04-28-07:15:49-11426' exited with 1 
Apr 28 07:15:50 gl abrtd: Deleting problem directory '/var/spool/abrt/ccpp-2016-04-28-07:15:49-11426' 

輸出時,它運行在詳細模式:

[email protected]:05:27 logMsg.h[1792]: Starting transaction from 127.0.0.1:51245/v1/updateContext 
[email protected]:05:27 connectionOperations.cpp[78]: Database Operation Successful (query: { id.id: "8a55c32500dfad.....06be56709b75b31c1f9beb7d2", id.type: "House", _id.servicePath: /^\/$/ }) 
terminate called after throwing an instance of 'mongo::MsgAssertionException' 
    what(): BSONElement: bad type 100 

任何有關可能導致這種情況或我們應該繼續尋找的想法?

+0

如果我們可以看一下您正在使用的updateContext請求負載,那將會很棒。你能提供一個鏈接嗎?謝謝! – fgalan

+0

感謝您的回覆!今天早上我們做了一些更多的測試,看到實際的請求不是那麼大,似乎不是問題。我們現在只需通過curl/cli發送一個簡單的命令來刪除一個屬性,就可以使其立即崩潰。即使有效負載沒有超過限制,實體中的總數據大約是1.1MB(例如大於有效負載限制)可能會成爲問題嗎?我是否可能會在PM中向您發送實體數據(如xml或從mongodb轉儲),以便您可以在本地嘗試它? – Henrik

+0

是的,請給我一個實體的mongo dumpo做一個本地測試。另外,如果你可以編輯你的問題帖子來包含通過curl/cli刪除屬性的命令,那將是非常好的。謝謝! – fgalan

回答

0

這次崩潰是由於在Orion檢測到a bug。修正爲on the way,所以我們希望它合併,並準備納入下一個Orion發行版(Orion 1.2.0)。