[HSQLDB - SELECT] Exceção IndexOutOfBoundsException

Boa tarde pessoal,

Estou utilizando a versão 1.7.2 do HSQLDB (não pode ser atualizada) e ao fazer uma consulta em determinada tabela:


SELECT * FROM minha_tabela

Estou recebendo a exceção:

S1000 General error java.lang.IndexOutOfBoundsException / Error Code: 40 / State: S1000

Já pesquisei pelo State S1000 e pode estar relacionado a varias coisas.
O error code 40 é “GENERAL ERROR”.

Por isso por esses códigos não consegui achar nenhuma solução para o problema.

Sei que essa tabela tem muitas linhas e minha duvida é:

O HSQLDB tem algum limite de linhas para consulta?

Utilizando SELECT TOP consegui chegar ao seguinte valor:

SELECT TOP 25616 * FROM minha_tabela

Valeu!

Normalmente o IndexOutOfBoundsException é lançado quando você tenta acessar uma posição que não existe em um array e não por que esse array ultrapassou o limite máximo.
Javadoc do mesmo.

[quote=drsmachado]Normalmente o IndexOutOfBoundsException é lançado quando você tenta acessar uma posição que não existe em um array e não por que esse array ultrapassou o limite máximo.
Javadoc do mesmo.[/quote]

Certo,

Será então que o HSQLDB quando eu utilizo * na consulta está tentando acessar uma linha que não existe?

Se sim, obviamente é um erro que pode ter sido ocasionado por qual motivo?

Obrigado!

Estranho que quando utilizo o SELECT TOP, como informei funciona:

SELECT TOP 10 codigo FROM minha_tabela 

Agora se pego um desses 10 códigos e faço o seguinte:

SELECT * FROM minha_tabela WHERE codigo = 1

Tanto assim como especificando a coluna “codigo” gera a mesma exceção!