2017-01-19 65 views
0

我們有一個騾子ESB批應用程序,從CSV讀取多條記錄,並嘗試將其寫入DB。我們需要批次停止第一個例外(max failed records = 0)。數據庫記錄插入有一個批處理步驟。騾子ESB批例外未註冊

我們故意修改了數據庫連接,以使其失敗。

我們已經注意到雖然DB處理器引發了一個異常,批處理似乎並不在意並且不斷處理接收新記錄。

DB連接使用C3P0池(它是在包括在由設計騾3.5.2)。看起來好像從c3p0仍然在運行(30 by default),並且直到他們完成,該步驟不會被「聲明」爲失敗。

我們該如何解決這個問題?acquireRetryAttemps屬性不會被更改)。

感謝

回答

0

我們注意到,雖然DB處理器引發了異常,在 批次一步似乎都不在乎,並不斷地接受新的記錄 過程。

你可以捕獲這個異常,並提出更強大的實際上會打破你的批處理。

此外,基於提供的解釋,您可以使用異常處理,因爲您會看到數據庫異常。所以,也許,你的異常處理不好。沒有代碼很難說。你能提供SSCCE嗎?