[SQLiteJDBC] java.lang.IllegalStateException during commit

Adam B adamb at videx.com
Wed Nov 10 14:03:13 EST 2010


Perhaps you could try the official, native-code version of sqlite.  
Judging by the stack trace it appears that you're using the pure-java 
version (nestedvm).  Not that there's anything wrong with that - it 
would just rule out nestedvm related bugs.

Parag Thakur wrote:
> hello,
>
> We are facing a very peculiar issue at the customer that I am not able to
> reproduce easily. After this exception occurs, the database stays locked and
> all subsequent operations (from either the same process or a different one)
> on the db fail with "database is locked" exception. We are using v56 of the
> driver with jre6 (1.6.0.21).
>
> Sequence of operations in our code:
>
> Open connection
>
> -         Create prepared statement
>
> -         Set auto commit = false for the connection
>
> -         Insert rows
>
> -         Commit *< This throws Illegal state exception after software has
> been running for a while *
>
> -          In finally block, I try to close the prepared statement. This
> also throws Ilegal state exception
>
> -          In outer most block, I try to close the connection. This also
> throws illegal state exception and I think DB stays open after that.
> From that point on, either this process OR any other process gets “database
> is locked” exception
>
> Stack traces:
>
> During commit():
>
> java.lang.IllegalStateException: call() called in inappropriate state
>  at org.ibex.nestedvm.Runtime.call(Runtime.java:655)
> at org.ibex.nestedvm.Runtime.call(Runtime.java:647)
>  at org.sqlite.NestedDB.call(NestedDB.java:406)
> at org.sqlite.NestedDB.call(NestedDB.java:389)
>  at org.sqlite.NestedDB.finalize(NestedDB.java:131)
> at org.sqlite.DB.exec(DB.java:71)
>  at org.sqlite.Conn.commit(Conn.java:172)
>
> During close():
>
> java.lang.IllegalStateException: call() called in inappropriate state
>  at org.ibex.nestedvm.Runtime.call(Runtime.java:655)
> at org.ibex.nestedvm.Runtime.call(Runtime.java:647)
>  at org.sqlite.NestedDB.call(NestedDB.java:406)
> at org.sqlite.NestedDB.call(NestedDB.java:389)
>  at org.sqlite.NestedDB.finalize(NestedDB.java:131)
> at org.sqlite.DB.close(DB.java:87)
>  at org.sqlite.Conn.close(Conn.java:119)
>
> Any help would be greatly appreciated!
>
> thanks,
> Parag
> _______________________________________________
> SQLiteJDBC mailing list
> SQLiteJDBC at lists.hcoop.net
> https://lists.hcoop.net/listinfo/sqlitejdbc
>   



Videx Inc. 1105 N. E. Circle Blvd. Corvallis OR 97330 (541) 738-5500
CONFIDENTIAL COMMUNICATION: The email message and any attachments are intended only for the addressee.  They may be privileged, confidential, and protected from disclosure. If you are not the intended recipient, any dissemination, distribution, or copying is expressly prohibited.  If you received this email message in error, please notify the sender immediately by replying to this e-mail message or by telephone




More information about the SQLiteJDBC mailing list