threads are not magical. code has to be crafted to work correctly in concurrent mannger. take a look at the H2 source code. it has mutexes in many places (search for the "synchronized" keyword in the source). So if you have a thread that locks a mutex then causes another thread to hit that same mutex, then deadlock is exactly what you'll get.
On May 28, 2010, at 1:20 AM, Rami Ojares wrote: > Excuse me, but that sounds silly. > Threads have been invented! > One thread is the client, listening daemon opens a new server thread and so > on. > Why do you think a very clever design is needed? > > - rami > > On 28.5.2010 9:54, James Gregurich wrote: >> if you have the db engine connect to itself while processing a query, >> deadlock is what I would expect to happen. It would take a very clever >> design to allow the db engine to recursively call itself without deadlocking. >> >> On May 27, 2010, at 1:58 AM, Rami Ojares wrote: >> >> >>> >>>> umm. are you asking the db engine to connect to itself from inside a >>>> trigger? >>>> >>> I am trying to do additional cleanup whenever a trigger is removed. >>> I can not cleanup if I don't have a connection to the database. >>> So yes. >>> >>> - rami >>> >> > > -- > You received this message because you are subscribed to the Google Groups "H2 > Database" group. > 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. > -- You received this message because you are subscribed to the Google Groups "H2 Database" group. 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.
