[h2] Re: java-level deadlock

2014-09-22 Thread Dieter Cailliau
The fix is in Version 1.3.174 (2013-10-19).


Is it possible to find out in which version the bug was introduced? I have 
deployments using 1.3.168 and i don't remember having seen this happening. 
I have seen it happening in 1.3.173 though. I'm wondering whether to 
upgrade the 1.3.168 deployments or leave them alone.

-- 
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 h2-database+unsubscr...@googlegroups.com.
To post to this group, send email to h2-database@googlegroups.com.
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.


[h2] Re: Java-level deadlock in 1.3.171

2013-06-09 Thread Thomas Mueller
Hi,

I believe this is fixed with the latest version of H2.

Regards,
Thomas


On Sat, May 4, 2013 at 7:04 AM, Ainimyoung  wrote:

> Hi, I'm working on a project with H2 1.3.171 in server mode.
> Everything was fine while data growing daily until H2 hung due to a
> Java-level deadlock as below.
>
> Found one Java-level deadlock:
> =
> "H2 TCP Server (tcp://127.0.1.1:9092) thread":
>   waiting to lock monitor 0x008a5720 (object 0x0006283c4dd0, a
> org.h2.engine.Database),
>   which is held by "H2 TCP Server (tcp://127.0.1.1:9092) thread"
> "H2 TCP Server (tcp://127.0.1.1:9092) thread":
>   waiting to lock monitor 0x007a0d00 (object 0x0006283c9558, a
> org.h2.engine.Session),
>   which is held by "H2 TCP Server (tcp://127.0.1.1:9092) thread"
> "H2 TCP Server (tcp://127.0.1.1:9092) thread":
>   waiting to lock monitor 0x008a5720 (object 0x0006283c4dd0, a
> org.h2.engine.Database),
>   which is held by "H2 TCP Server (tcp://127.0.1.1:9092) thread"
>
> Java stack information for the threads listed above:
> ===
> "H2 TCP Server (tcp://127.0.1.1:9092) thread":
> at org.h2.engine.Engine.openSession(Engine.java:71)
> - waiting to lock <0x0006283c4dd0> (a org.h2.engine.Database)
> at org.h2.engine.Engine.openSession(Engine.java:159)
> - locked <0x00062394e058> (a org.h2.engine.Engine)
> at org.h2.engine.Engine.createSessionAndValidate(Engine.java:138)
> at org.h2.engine.Engine.createSession(Engine.java:121)
> at org.h2.server.TcpServerThread.run(TcpServerThread.java:137)
> at java.lang.Thread.run(Thread.java:722)
> "H2 TCP Server (tcp://127.0.1.1:9092) thread":
> at
> org.h2.jdbc.JdbcPreparedStatement.executeQuery(JdbcPreparedStatement.java:101)
> - waiting to lock <0x0006283c9558> (a org.h2.engine.Session)
> at org.h2.store.LobStorage.readBlock(LobStorage.java:226)
> - locked <0x0006283c4dd0> (a org.h2.engine.Database)
> at
> org.h2.store.LobStorage$LobInputStream.fillBuffer(LobStorage.java:463)
> at
> org.h2.store.LobStorage$LobInputStream.readFully(LobStorage.java:439)
> at org.h2.store.LobStorage$LobInputStream.read(LobStorage.java:430)
> at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283)
> at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325)
> at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177)
> - locked <0x00077ce60998> (a java.io.InputStreamReader)
> at java.io.InputStreamReader.read(InputStreamReader.java:184)
> at java.io.BufferedReader.fill(BufferedReader.java:154)
> at java.io.BufferedReader.read1(BufferedReader.java:205)
> at java.io.BufferedReader.read(BufferedReader.java:279)
> - locked <0x00077ce60998> (a java.io.InputStreamReader)
> at java.io.Reader.read(Reader.java:140)
> at org.h2.store.Data.copyString(Data.java:1293)
> at org.h2.value.Transfer.writeValue(Transfer.java:462)
> at org.h2.server.TcpServerThread.writeValue(TcpServerThread.java:487)
> at org.h2.server.TcpServerThread.sendRow(TcpServerThread.java:469)
> at org.h2.server.TcpServerThread.process(TcpServerThread.java:322)
> at org.h2.server.TcpServerThread.run(TcpServerThread.java:150)
> at java.lang.Thread.run(Thread.java:722)
> "H2 TCP Server (tcp://127.0.1.1:9092) thread":
> at org.h2.engine.Database.update(Database.java:1429)
> - waiting to lock <0x0006283c4dd0> (a org.h2.engine.Database)
> at org.h2.schema.Sequence.flush(Sequence.java:127)
> - locked <0x0006283c9558> (a org.h2.engine.Session)
> - locked <0x0006284102b0> (a org.h2.schema.Sequence)
> at org.h2.schema.Sequence.getNext(Sequence.java:92)
> - locked <0x0006284102b0> (a org.h2.schema.Sequence)
> at org.h2.expression.SequenceValue.getValue(SequenceValue.java:30)
> at org.h2.table.Column.validateConvertUpdateSequence(Column.java:264)
> - locked <0x0006284101f8> (a org.h2.table.Column)
> at org.h2.table.Table.validateConvertUpdateSequence(Table.java:692)
> at org.h2.command.dml.Insert.insertRows(Insert.java:120)
> at org.h2.command.dml.Insert.update(Insert.java:84)
> at org.h2.command.CommandContainer.update(CommandContainer.java:75)
> at org.h2.command.Command.executeUpdate(Command.java:230)
> - locked <0x000628436c18> (a org.h2.engine.Session)
> at org.h2.server.TcpServerThread.process(TcpServerThread.java:334)
> - locked <0x000628436c18> (a org.h2.engine.Session)
> at org.h2.server.TcpServerThread.run(TcpServerThread.java:150)
> at java.lang.Thread.run(Thread.java:722)
>
> Found 1 deadlock.
>
> The entire jstack log is in attachment.
>
> Environment:
> h2 1.3.171
> java version "1.7.0_05"
> Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
> Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)
>
> Can any one help? Thanks!
>
> Best Regards.
>
> --
> You rec