2012-12-14 18 views
1

這是我的應用程序的請求流:Java的查詢調用SYBASE數據庫並不返回任何值

的XML請求將服務層,其中XML得到了解析,並在其值設置爲一個域對象建立java的。然後,根據JRules中的規則驗證構建的域對象。

驗證過程中,存在從JRules BOM方法到sybase數據庫的複雜查詢調用。此方法調用將返回我的DEV和SIT環境中的值,而不會出現任何問題。但未能在少量請求中返回UAT環境中的值。

我有機會檢查UAT日誌,我發現的是,如果特定查詢的執行時間超過800毫秒,則該特定查詢無法返回任何值。我發現幾個執行時間小於750ms的請求返回值沒有問題。 我看不到任何與查詢超時有關的錯誤。

任何在websphere級別設置或sybase級別設置(DEFAULT_TIMEOUT_VALUE)時影響此查詢執行的任何內容都不會返回?

回答

0

我得到了這個問題的原因。看起來在特定的查詢調用中發生了死鎖。這在服務日誌中被發現。我們計劃引入一個重試機制。

相關問題