Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

hibernate.jdbc.fetch_size ou @QueryHints(@javax.persistence.QueryHint(name=org.hibernate.fetchSize, value=10)) não está funcionando


O tamanho de busca padrão no oracle já tem 10 registros, então é estranho que você esteja tendo problemas de falta de memória ao adicionar essa dica. Especialmente se 100.000 não representa um problema.

Algumas coisas que eu faria para identificar o problema e fornecer uma solução:

Barebone teste seu código

Teste o código responsável por suas consultas (provavelmente seu DAO) com uma sobrecarga mínima. Suspeito que a exceção de falta de memória seja mais provável devido ao processamento dos resultados do banco de dados e não à consulta real + fetchsize.

Portanto, altere temporariamente seu código para simplesmente executar a consulta, mas não faça nenhum mapeamento ou outro processamento nele. Apenas certifique-se de que está feito.

Se isso parece "corrigir" seu problema, você pode ter realizado alguns nos dados recebidos que inundam sua memória.

Atualize suas dependências

Se você estiver usando maven (ou gradle, ou qualquer outra ferramenta de compilação), sugiro atualizar qualquer atualização pelo menos para a versão secundária mais recente (por exemplo 1.2.3 -> 1.2.9), isso não deve quebrar nada, mas pode corrigir alguns bugs.

Não seja aleatório com tamanhos de busca

Confira essas respostas para decidir qual seria um bom tamanho de busca para sua situação.