it-swarm-eu.dev

oracle: Už žádná data ke čtení ze soketu

Používáme Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 a my máme chybu v dotazu, který nám dává chybu

Error: No more data to read from socket
SQLState:  null
ErrorCode: 17410

Dotaz je podobný následujícímu

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

Pokusím-li se odstranit poslední příkaz, kde příkaz běží, dotaz běží dobře. Také, pokud se pokusím „redukovat“ filtr rownum na nižší úroveň záznamů, dotaz běží dobře:

where rownum<10

Hledání na internetu Zjistil jsem, že by to mohlo být způsobeno parametrem "cursor_sharing" na "podobný", který se zdá být buggy na některé verzi Oracle. Snažil jsem se nastavit "přesný", ale bohužel mám stejnou chybu.

Zajímalo by mě, jestli načtená data příkazu select mohou mít limit v bytech v Oracle10g, ale nic jsem nenašla. Našel jsem limit na Oracle8i, ale nic na Oracle10g.

Stejný problém máme při provádění dotazu na jiném klientovi (dbvisualizer, veverka) a na konzole Oracle.

5
egesuato

Žádné další údaje ze soketu znamenají, že došlo ke zhroucení stínového procesu, například u ORA-600 nebo ORA-7445. Vyhledejte trasovací soubor v adresáři user_dump_dest nebo položku v protokolu výstrah. Toto je pravděpodobně chyba

Viz toto: https://blogs.Oracle.com/db/entry/ora-600_trou Troubleshooting

5
sensware

Pro budoucí googlery

Mým případem byl server typu glassfish 2, který hostil aplikace používající hibernace.

Chyba je přičtena serveru Oracle DB, který selhal, a fishfish se neobnoví.

Restartování serveru vyřeší problém

0
alvaro g