簡體   English   中英

Oracle Datasource返回null連接

[英]Oracle Datasource returning null connection

當沒有連接請求更多時,oracle數據源返回空連接。 我啟用了implict緩存。只有在設置了ConnectionWaitTimeout時,oracle規范才會返回null。 我沒有為緩存屬性中的ConnectionWaitTimeout設置值。

這就是規范所說的

ConnectionWaitTimeout

指定請求連接且已有MaxLimit連接處於活動狀態時的緩存行為。 如果ConnectionWaitTimeout大於零,則每個連接請求等待指定的秒數或直到連接返回到緩存。 如果在超時之前沒有連接返回緩存,則連接請求返回null。

默認值:0(無超時)

Datasource可以返回空連接的其他可能性是什么?

我認為默認值可能會有所不同,具體取決於您使用的Oracle版本。 一些信息是矛盾的,例如,Oracles“ 優化連接池行為 ”意味着默認值是3秒(11g?),其他來源表示它是0,如問題中所述。

我建議明確地將其設置為零,看看行為是否仍然表現出來。

我嘗試設置此值。 雖然文檔說默認沒有超時,但是當我沒有設置此屬性時,數據源返回null。當我明確指定一個值時,連接正在等待,即使值為0也給了我一個空連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM