Oracle-10g
oracle:沒有更多數據可以從套接字讀取
我們正在使用 Oracle 數據庫 10g 企業版 10.2.0.4.0 版,我們在查詢中遇到錯誤,導致我們出現錯誤
Error: No more data to read from socket SQLState: null ErrorCode: 17410
查詢類似於以下內容
select * from ( select ... <many, MANY fields> from table inner join left outer join left outer join inner join where string1='value1' and string2='value2' ) where rownum > 500 and rownum < 510
如果我嘗試刪除最後的 where 語句,查詢執行良好。此外,如果我嘗試將 rownum 過濾器“減少”到較低級別的記錄,則查詢執行良好:
where rownum<10
在網際網路上搜尋我發現它可能是由參數“cursor_sharing”到“similar”引起的,這在某些版本的 oracle 上似乎有問題。我試圖將其設置為“精確”,但不幸的是我遇到了同樣的錯誤。
我想知道 select 語句的檢索數據是否可能在 oracle10g 中有字節限制,但我沒有找到任何東西。我發現 oracle8i 有限制,但 oracle10g 沒有。
我們在不同的客戶端(dbvisualizer、squirrel)和 oracle 控制台上執行查詢時遇到了同樣的問題。
沒有來自套接字的更多數據意味著影子程序崩潰,例如 ORA-600 或 ORA-7445。在 user_dump_dest 目錄中查找跟踪文件和/或在警報日誌中查找條目。這可能是一個錯誤
看到這個:https ://blogs.oracle.com/db/entry/ora-600_troubleshooting
對於未來的Google人,
我的案例是使用休眠的 glassfish 2 伺服器託管應用程序。
該錯誤歸因於 Oracle 數據庫伺服器出現故障並且 glassfish 無法恢復。
重啟伺服器即可解決問題