Hi,

Is this exception reproducible with version 1.4.184, with a fresh database?
If yes, would it be possible to send me or post a reproducible test case?

Regards,
Thomas

On Wed, Dec 17, 2014 at 5:36 PM, pishen tsai <[email protected]> wrote:
>
> The .mv.db file is not growing that large (now around 200M) even without
> re-opening this time.
> But I got an Exception that I have no idea why...
>
> org.h2.jdbc.JdbcSQLException: General error:
> "java.lang.IllegalStateException: Negative position -1847 [1.4.183/6]"
> [50000-183]
>         at
> org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
> ~[h2-1.4.183.jar:1.4.183]
>         at org.h2.message.DbException.get(DbException.java:168)
> ~[h2-1.4.183.jar:1.4.183]
>         at org.h2.message.DbException.convert(DbException.java:295)
> ~[h2-1.4.183.jar:1.4.183]
>         at
> org.h2.mvstore.db.MVTableEngine$1.uncaughtException(MVTableEngine.java:93)
> ~[h2-1.4.183.jar:1.4.183]
>         at org.h2.mvstore.MVStore.writeInBackground(MVStore.java:2369)
> ~[h2-1.4.183.jar:1.4.183]
> Caused by: java.lang.IllegalStateException: Negative position -1847
> [1.4.183/6]
>         at
> org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:768)
> ~[h2-1.4.183.jar:1.4.183]
>         at
> org.h2.mvstore.MVStore.readPageChunkReferences(MVStore.java:1262)
> ~[h2-1.4.183.jar:1.4.183]
>         at
> org.h2.mvstore.MVStore.collectReferencedChunks(MVStore.java:1240)
> ~[h2-1.4.183.jar:1.4.183]
>         at
> org.h2.mvstore.MVStore.collectReferencedChunks(MVStore.java:1244)
> ~[h2-1.4.183.jar:1.4.183]
>         at
> org.h2.mvstore.MVStore.collectReferencedChunks(MVStore.java:1244)
> ~[h2-1.4.183.jar:1.4.183]
>
> Regards,
> Pishen
>
>
>
>
> 2014-12-16 0:13 GMT+08:00 pishen tsai <[email protected]>:
>>
>> Thanks, I will try it in days, and will report the result after that.
>>
>> Regards,
>> Pishen
>>
>> 2014-12-16 0:09 GMT+08:00 Thomas Mueller <[email protected]>:
>>>
>>> Hi,
>>>
>>> Could you try again with the latest version of H2?
>>>
>>> (Please not there is a bug that prevents index usage if you use
>>> auto-increment column; but I think you don't use this, so it shouldn't
>>> affect you).
>>>
>>> Regards,
>>> Thomas
>>>
>>> On Mon, Dec 1, 2014 at 12:18 PM, pishen tsai <[email protected]> wrote:
>>>
>>>> Hi,
>>>>
>>>> I have surveyed a bit and found that h2 need to compact the database
>>>> when the JDBC connection is closed.
>>>> Hence I tried to close and reopen the connection every 1000~2000
>>>> INSERT/UPDATE.
>>>> Now the size of .mv.db grows much slower, but the size is still larger
>>>> than 44M, maybe I have to enlarge the shutdown delay for the DB to compact
>>>> more. May tried that later.
>>>>
>>>> Thanks,
>>>> pishen
>>>>
>>>> Thomas Mueller於 2014年12月1日星期一UTC+8下午2時50分53秒寫道:
>>>>>
>>>>> Hi,
>>>>>
>>>>> It is a known problem that the .mv.db file grows large, and I'm
>>>>> working on reducing the file size. However it shouldn't grow _that_ large.
>>>>> Could you post your test case please?
>>>>>
>>>>> Regards,
>>>>> Thomas
>>>>>
>>>>> On Sunday, November 30, 2014, pishen tsai <[email protected]> wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I'm using Anorm (in Play framework 2.3.6) to store one table with
>>>>>> 450000 rows in H2 (1.4.182).
>>>>>>
>>>>>> The table is created by "CREATE TABLE terms (name VARCHAR(20) PRIMARY
>>>>>> KEY, df INT)"
>>>>>>
>>>>>> After frequently INSERT and UPDATE all the data into the table, the
>>>>>> .mv.db file size grows up to 20GB.
>>>>>> Then, I close the JDBC connection and open it again, and the .mv.db
>>>>>> file size drop back to 44MB.
>>>>>> Any idea why the file size can grow and drop so much? I have checked
>>>>>> the content of table, and the data seems unchanged.
>>>>>>
>>>>>> I'm not sure if it's the problem of transaction log, but by default,
>>>>>> Anorm use JDBC with auto-commit, so each INSERT and UPDATE should be in 
>>>>>> one
>>>>>> single transaction?
>>>>>>
>>>>>> Anorm: https://playframework.com/documentation/2.3.x/ScalaAnorm
>>>>>>
>>>>>> Thanks,
>>>>>> pishen
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups "H2 Database" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>> send an email to [email protected].
>>>>>> To post to this group, send email to [email protected].
>>>>>> Visit this group at http://groups.google.com/group/h2-database.
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>  --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "H2 Database" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at http://groups.google.com/group/h2-database.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  --
>>> You received this message because you are subscribed to a topic in the
>>> Google Groups "H2 Database" group.
>>> To unsubscribe from this topic, visit
>>> https://groups.google.com/d/topic/h2-database/dqONbAmK9-M/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to
>>> [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at http://groups.google.com/group/h2-database.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>  --
> You received this message because you are subscribed to the Google Groups
> "H2 Database" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/h2-database.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.

Reply via email to