google-code-export / h2database

Automatically exported from code.google.com/p/h2database
0 stars 1 forks source link

[feature request] mvcc with multi-threading #316

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Our app uses mvcc already, and we see a lot of contention on the sync(database) 
on Command#executeQuery(there are a lot of concurrent reads and updates on our 
database).

Disabling mvcc in favour of multi-threading gave us significant boost for 
concurrent reads, but we have faced update timeout issues while running without 
mvcc in the past(as in all connections wait on locking the table, and 
connection pool runs out of connections, hence the timeouts).

Mvcc and multi-threading combination will be a big performance boost to a setup 
like ours.

Original issue reported on code.google.com by singh.janmejay on 20 Apr 2011 at 5:05

GoogleCodeExporter commented 9 years ago
This is also to get a conversation going on the issue tracker about the reason 
for this constraint. For instance, if caller uses one connection per thread and 
h2 can probably maintain version per connection(or version per thread) etc.

Also, I am ready to try things out locally and report results, if it helps.

Original comment by singh.janmejay on 20 Apr 2011 at 5:11

GoogleCodeExporter commented 9 years ago
It seems 1.4.x planned features list has mvcc + multi-threading support among 
other things. So wondering if there a time-frame decided for 1.4.x?

Original comment by singh.janmejay on 2 May 2011 at 12:46

GoogleCodeExporter commented 9 years ago
I'm sorry, I can't tell when exactly it will be implemented.

Original comment by thomas.t...@gmail.com on 27 May 2011 at 10:55

GoogleCodeExporter commented 9 years ago
Thomas,

My project needs this as well. We execute nearly a million queries in 30 
minutes in a large installation. In MVCC mode, we see huge lock contentions. 
Would it possible for you to give an idea of how big of a task this is? May be 
we can pitch and help with some tasks (or even testing).

Original comment by itspa...@gmail.com on 26 Apr 2012 at 6:44

GoogleCodeExporter commented 9 years ago
It should be possible to support this with the MVStore storage.

Original comment by thomas.t...@gmail.com on 28 Jul 2013 at 9:39

GoogleCodeExporter commented 9 years ago
Should work now with version 1.4.x

Original comment by thomas.t...@gmail.com on 23 Jun 2014 at 6:34