2013-11-28 28 views
1

我們有一個很長的請求,它執行目錄搜索,然後計算一些信息並將其存儲在另一個文檔中。商店之後是否打電話索引文件。Plone上的長時間交易中的ReadConflictError 4.1

在我們在/ pooldb/csvExport/runAgent收到錯誤信息,如INFO ZPublisher.Conflict ConflictError日誌:數據庫衝突錯誤(OID 0x017f1eae,類BTrees.IIBTree.IISet,串行這TXN開始0x03a30beb4659b266 2013-11 -27 23:07:16.488370,當前提交的串行0x03a30c0d2ca5b9aa 2013-11-27 23:41:10.464226)(自19月11日星期一15:59:08啓動以來的19個衝突(0未解決)) 並且事務正在中止並重新啓動。

我讀過的所有文檔都說由於MVVC在ZODB ReadConflicts中不再發生。由於這是用RestrictedPython編寫的,因此放入一個保存點並不是一個簡單的選項(但可能是我猜測的唯一選擇)。

是否有另一個避免這種衝突?如果我需要使用保存點,任何人都可以考慮一個安全原因,爲什麼我不應該將用於PythonScripts的保存點事務方法列入白名單?

+1

這是一個ReadConflict?難道是因爲重新編制索引失敗了,因爲在搜索+計算完成時重新編制了索引? –

+0

你說得對。它與之前的ReadConflictError混淆。我們仍然不確定在這裏寫什麼,但顯然是這樣 – djay

回答