Thanks! That certainly helps!

I tried MULTI_THREADED today with 1.4.197 and found some odd behavior with 
regards to the application I'm testing with.  Some foreign key errors 
because inserts were being processed (apparently) out-of-order, which based 
on how the application is coded, should be impossible.

The application works 100% fine on H2 with MULTI_THREADED=FALSE, and 100% 
fine on HSQLDB (multi-threaded) and PostgreSQL (obviously multi-threaded).  
There are no out-of-order issues on those two databases, and the 
application - being heavily multithreaded by nature - works 100% perfectly, 
with zero data issues.  The same is true for H2, with the caveat that 
MULTI_THREADED must remain FALSE.

The reason the threading is an issue is because the application is an ETL 
engine for extracting large amounts of data at a time.  After a certain 
(large-ish) volume of data is extracted, performance on H2 starts to fall 
off because writing out committed-but-unrecorded (i.e. commited-and-queued 
for disk write) transactions takes longer and longer the larger the file 
gets.  We're talking on a 60GB database, the processor threads have to stop 
for about 10 (more?) seconds, about every 10 (or so) seconds, waiting for 
the MVStore writer thread to do its thing before they can resume 
processing.  PostrgeSQL has no such falloff and no such issue, and HSQLDB - 
albeit slower overall - appears to not have such issues either.

I was hoping enabling MULTI_THREADED would do away with that wait or at 
least minimize it. But since it's now failing to properly store data 
altogether then that's no longer an option... perhaps 1.4.198 solves that? 
I might check it out and build from source, just to mess around.  Or, 
alternatively, are there beta/nightly builds published that are accessible 
via Maven?

If you want more details, I can certainly offer them up.

Thanks!

-- 
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.

Reply via email to