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.