Hi Sam,

i think i found the problem.

I used following fix:

                // FIX --> RuntimeException: freeCount expected
                // The problem occurs in Storage.refillFreeList(). This method 
was
introduced in
                // version 1.0.76 (2008-07-27) to solve the problem "The 
database
file
                // was growing after deleting many rows, and after large update
operations".
                System.setProperty("h2.check", "false");

After deleting this code snippet, everything seemd to work fine...

Greetings
Reiner

On 5 Jan., 09:19, Bratmaxxe <reiner.l...@gmx.de> wrote:
> Hi Sam,
>
> ok let's try to solve the problem ;)
>
> I am using H2 Version 1.2.126 in Embedded Mode (org.h2.Driver) -
> connectionstring : "jdbc:h2:C:\dblocation\mydb"
>
> I have some tables in the DB, and the problem occurs in the table
> named "MWI5REP", which contains 25493 Rows.
>
> If i do a simple select * my java program throws the following
> exception:
>
> org.h2.jdbc.JdbcSQLException: Allgemeiner Fehler:
> "java.lang.ArrayIndexOutOfBoundsException: 512"
> General error: "java.lang.ArrayIndexOutOfBoundsException: 512"; SQL
> statement:
> SELECT MWI5REP.* FROM MWI5REP  WHERE  MWI5REP.I5RCTX = 100 AND
> MWI5REP.I5D0NB = 677 AND I5CQST = 'F' AND I5W5NB > 0 ORDER BY I5RCTX,
> I5D0NB, I5CRNB, I5W3NB, I5W4NB, I5XXTX [50000-126]
>         at org.h2.message.Message.getSQLException(Message.java:110)
>         at org.h2.message.Message.convert(Message.java:287)
>         at org.h2.message.Message.convert(Message.java:248)
>         at org.h2.command.Command.executeQuery(Command.java:134)
>         at org.h2.jdbc.JdbcStatement.executeQuery(JdbcStatement.java:
> 76)
>
>         ....
>
> Caused by: java.lang.ArrayIndexOutOfBoundsException: 512
>         at org.h2.store.DataPage.writeInt(DataPage.java:139)
>         at org.h2.store.DataPage.writeValue(DataPage.java:415)
>         at org.h2.result.ResultDiskBuffer.addRows
> (ResultDiskBuffer.java:93)
>         at org.h2.result.LocalResult.addRowsToDisk(LocalResult.java:
> 285)
>         at org.h2.result.LocalResult.addRow(LocalResult.java:280)
>         at org.h2.command.dml.Select.queryFlat(Select.java:499)
>         at org.h2.command.dml.Select.queryWithoutCache(Select.java:
> 558)
>         at org.h2.command.dml.Query.query(Query.java:243)
>         at org.h2.command.CommandContainer.query(CommandContainer.java:
> 81)
>         at org.h2.command.Command.executeQuery(Command.java:132)
>         ... 41 more
>
> Is there anything i can do, to prohibit the problem ?
>
> I tried to setMaxRows to 1000 or used VMARGS (increased XMX and xms
> memory to 1024) but without success !
>
> Thanks in advantage
>
> sincerely
> Reiner Lott
>
> On 5 Jan., 08:42, Sam Van Oort <buckyba...@gmail.com> wrote:
>
>
>
> > Hallo,
>
> > (Es tut mir leid. Meine Deutsch is sehr schlect aber ich will Sie
> > helfen.)
>
> > Die Fehler is sehr schlimm aber Sie muss uns Information geben.
>
> > Ist Ihre H2 Version alt?
>
> > Was sind die Einstellungen?
>
> > Könnten Sie ein kurz Testfall geben?
>
> > -- Sam Van Oort
> > On Jan 5, 1:20 am, Bratmaxxe <reiner.l...@gmx.de> wrote:
>
> > > Hallo,
>
> > > ich habe ein Problem mit meiner H2 DB.
>
> > > Es gibt eine Tabelle Namens MWI5REP, welche 25493 Datensätze enthält.
>
> > > Sofern ich ein Select * mache, wirft mir meine Anwendung eine
> > > Exception:
>
> > > org.h2.jdbc.JdbcSQLException: Allgemeiner Fehler:
> > > "java.lang.ArrayIndexOutOfBoundsException: 512"
> > > General error: "java.lang.ArrayIndexOutOfBoundsException: 512"; SQL
> > > statement:
> > > SELECT MWI5REP.* FROM MWI5REP  WHERE  MWI5REP.I5RCTX = 100 AND
> > > MWI5REP.I5D0NB = 677 AND I5CQST = 'F' AND I5W5NB > 0 ORDER BY I5RCTX,
> > > I5D0NB, I5CRNB, I5W3NB, I5W4NB, I5XXTX [50000-126]
> > >         at org.h2.message.Message.getSQLException(Message.java:110)
> > >         at org.h2.message.Message.convert(Message.java:287)
> > >         at org.h2.message.Message.convert(Message.java:248)
> > >         at org.h2.command.Command.executeQuery(Command.java:134)
> > >         at org.h2.jdbc.JdbcStatement.executeQuery(JdbcStatement.java:76)
>
> > >         ....
>
> > > Caused by: java.lang.ArrayIndexOutOfBoundsException: 512
> > >         at org.h2.store.DataPage.writeInt(DataPage.java:139)
> > >         at org.h2.store.DataPage.writeValue(DataPage.java:415)
> > >         at 
> > > org.h2.result.ResultDiskBuffer.addRows(ResultDiskBuffer.java:93)
> > >         at org.h2.result.LocalResult.addRowsToDisk(LocalResult.java:285)
> > >         at org.h2.result.LocalResult.addRow(LocalResult.java:280)
> > >         at org.h2.command.dml.Select.queryFlat(Select.java:499)
> > >         at org.h2.command.dml.Select.queryWithoutCache(Select.java:558)
> > >         at org.h2.command.dml.Query.query(Query.java:243)
> > >         at org.h2.command.CommandContainer.query(CommandContainer.java:81)
> > >         at org.h2.command.Command.executeQuery(Command.java:132)
> > >         ... 41 more
>
> > > Gibt es eine Möglichkeit diesen Fehler zu unterbinden ?
>
> > > Ein setMaxRows auf 1000 Zeilen oder VMARGS (xmx und xms auf 1024)
> > > brachten auch keinen Erfolg...
>
> > > Über eine Hilfe wäre ich dankbar !
>
> > > Gruß
>
> > > gez.
> > > Reiner Lott- Zitierten Text ausblenden -
>
> > - Zitierten Text anzeigen -- Zitierten Text ausblenden -
>
> - Zitierten Text anzeigen -

--

You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To post to this group, send email to h2-datab...@googlegroups.com.
To unsubscribe from this group, send email to 
h2-database+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/h2-database?hl=en.


Reply via email to