Hi Thomas, okay, I will change to using an external lock before proceeding with any h2 commands.
Regards, Bjorn Den torsdagen den 3:e januari 2013 kl. 19:56:17 UTC+1 skrev Thomas Mueller: > > Hi, > > This is quite an uncommon use case. I suggest to use your own locks in > this case. > > In the future, H2 will probably use regular native file locks, using > FileChannel.lock (exclusive locks for writing, shared locks when opening > the database in read-only mode). So I suggest to use this if possible. It > is supported by H2 already, by appending ";FILE_LOCK=FS" to the database > URL. I will document it. > > Regards, > Thomas > > > > On Thu, Dec 27, 2012 at 2:25 PM, Björn Melinder > <[email protected]<javascript:> > > wrote: > >> Hello, >> >> we use h2 database internally in this >> application<http://www.jetprofiler.com> - >> users can save and load data using BACKUP TO ... and Restore.execute(...). >> Multiple instances of the application are allowed, and the h2 file lock >> mechanism is used to avoid using the same workspace database per instance. >> If an instance fails to open the workspace because >> of DATABASE_ALREADY_OPEN_1 or ERROR_OPENING_DATABASE_1, we create a new >> second workspace and so on. >> >> The problem: If instance A of the application is started and begins a >> lengthy Restore-operation, and a new instance B is started, it will >> overwrite A's workspace since the A's file lock is not in place until after >> the database itself has been opened. The error is: >> >> java.lang.ClassCastException: org.h2.index.PageDataLeaf cannot be cast to >> org.h2.store.PageStreamTrunk >> >> probably because the page store gets corrupted by concurrent writing from >> two different processes. More information on the error can be found >> here<http://www.jetprofiler.com/forum/discussion/80/enterprise-jetprofiler-saved-jpp--monitoring-crash/> >> . >> >> I know this might not classify as a bug, but may I suggest that you add a >> FileLock to the Restore-operation to make it thread-safe? Alternatively, I >> can write my own file locks. >> >> Best regards, >> Bjorn >> >> -- >> You received this message because you are subscribed to the Google Groups >> "H2 Database" group. >> To view this discussion on the web visit >> https://groups.google.com/d/msg/h2-database/-/2UESn8eq2ucJ. >> To post to this group, send email to [email protected]<javascript:> >> . >> To unsubscribe from this group, send email to >> [email protected] <javascript:>. >> For more options, visit this group at >> http://groups.google.com/group/h2-database?hl=en. >> > > -- You received this message because you are subscribed to the Google Groups "H2 Database" group. To view this discussion on the web visit https://groups.google.com/d/msg/h2-database/-/Cg1OAo6Hc1EJ. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/h2-database?hl=en.
