Erro ou exceção? [bizarro]

Bom dia fórum.
Tenho um programa que gera imagens, e deixo ele rodando em várias máquinas para ganhar tempo.
O total de imagens é um valor alto - 6.000.000 (6 milhões), e após gerar 37.568 imagens, em uma das máquinas, o programa parou e apresentou a seguinte mensagem: [bizarro]

[quote]kgefec: fatal error 0

kgepop: no error frame to pop to for error 21503[/quote]

Em outra máquina, após gerar 4289 imagens, o programa parou e apresentou o que parecia ser uma exceção:

[quote]Exception in thread “main” java.sql.SQLException: ORA-01555: instantâneo muito antigo: número de segmento de rollback 10 com nome “_SYSSMU10$” muito pequeno

at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:2321)
at oracle.jdbc.oci8.OCIDBAccess.fetch(OCIDBAccess.java:2009)
at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:277)
at file_creator.Principal.main(Principal.java:84)

[/quote]

Em uma outra máquina, depios de gerar 40.153 imagens, parou e deu a seguinte mensagem: [mais bizarro ainda]

[quote]#

An unexpected error has been detected by HotSpot Virtual Machine:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c911899, pid=3768, tid=2480

Java VM: Java HotSpot™ Client VM (1.5.0_09-b03 mixed mode)

Problematic frame:

C [ntdll.dll+0x11899]

An error report file with more information is saved as hs_err_pid3768.log

If you would like to submit a bug report, please visit:

http://java.sun.com/webapps/bugreport/crash.jsp

#[/quote]

Desculpem por escrever muito, se alguém puder ajudar com algum destes erros eu fico muito grato.
Alguém já passou por algo parecido?

Vlw[]'s!!!

a segunda excessão é um erro do Oracle, que foi encapsulado em uma SQLException…

O primeiro erro e o segundo são relacionados ao servidor Oracle.
No primeiro, eu acho que vc chegou a um limite de memória do servidor (eu acho!!)
No segundo, o erro foi na transação.
Já o terceiro parece ser uma falha de acesso a memória.

Como vc está fazendo a geração dessas imagens?
Sugestão, coloque threads para controlar e executar o serviço. E se depender de consulta a dados para cada imagem, procure detonar os objetos para que o Garbage Colector trabalhe perfeitamente. Coloque tambem uma JVM de alta performance, um JIT da vida… Vc está consumindo muito recurso da máquina.

O Primeor erro é estronho, nao faço idéia.

O Segundo é do oracle, vc está dando os commits a cada inserção? Ali indica estouro do segmento de rollback.
Vc pode aumentar o segmento se quiser.

E esse terceito parece um que acontece direto na minha maquina local com Java 6, ainda não parei pra estudar isso.

Sim, para cada 4 imagens realizo uma consulta, pego os bytes do blob do oracle, e gero o jpg.
Depois disso atualizo uma tabela de status, e fecho todos os objetos de conexao, rs e pstmt.
É um loop, e começa tudo de novo depois, até completar as 6.000.000.
JIT? q isso?!?!?!
Pra que eu usaria uma Thread, para controlar intervalos de tempo?

[quote=nbluis]O Segundo é do oracle, vc está dando os commits a cada inserção? Ali indica estouro do segmento de rollback.
Vc pode aumentar o segmento se quiser.
[/quote]
Sim, eu dou commit em todas as transações e logo em seguida fecho todos os objetos, para depois abrir de novo, em cada passagem pelo loop.
O estranho é q em cada máquina deu um erro diferente.
Como faço pra aumentar a capacidade do segmento de rollback? Não posso configurar para não ter nenhum espaço reservado para rollbacks?
Vlw[]´s!