Hello all,

I have the following problem.

Using:

BaseX 8.1.1 beta cf713e2 (20150328.133759)
Java 1.8.0_31
Windows 7

The context: I have several sources of data from which I receive XML documents. My application will create a collection for each of these sources and store each received document into the collection corresponding to the source, and then update some kind of metadata about the collection. The metadata of all collections are stored into a common collection. Each source is handled by a different thread.
I am using an embedded BaseX, and access to it through LocalSession.

Now the problem is that after a certain amount of time (not constant, could be seconds or minutes) there is some exceptions.
Either: java.lang.IllegalMonitorStateException
at org.basex.core.locks.DBLocking.acquire
and org.basex.core.locks.DBLocking.release

Or: java.util.ConcurrentModificationException
at org.basex.core.users.User.find

I put the full stack trace in attachment.

I build a test application that mimic what happens in the real application and it seems to exhibit the same problem. The source of this test application is attached

My question: Am I doing something wrong, or is there a bug in BaseX?

Thanks a lot

Simon