Hi: I'd appreciate a point of clarification as to when to set the MULTI_THREADED vs MVCC parameters. My read is that that using MULTI_THREADED is using table and row locks and MVCC is using finer grain locks. Therefore, using MVCC should be fine for most multi-threaded use cases, and there should not be a need to set MULTI_THREADED (which does not work with MVCC and is not enabled by default).
Am I reading this correctly? We have a JPA EntityManager per-thread, and plan to use mixed-mode connections (embedded + TCP) and are hoping to achieve multi-threaded insert and merge operations. Blocking deletes are fine. ref: http://www.h2database.com/html/advanced.html#mvcc > The MVCC feature allows higher concurrency than using (table level or row > level) locks. When using MVCC in this database, delete, insert and update > operations will only issue a shared lock on the table. > ref: http://www.h2database.com/html/features.html#multiple_connections > By default, requests to the same database are synchronized. That means an > application can use multiple threads that access the same database at the > same time, however if one thread executes a long running query, the other > threads need to wait. To enable concurrent database usage, see the setting > MULTI_THREADED > Thanks, Matt -- 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 https://groups.google.com/group/h2-database. For more options, visit https://groups.google.com/d/optout.
