Hi, I'm currently setting up a prototype to store test log results in a XML DB and let users do reports with XQUERY. I'm experiencing performance issues and am trying to identify where the bottleneck is. The status: - I use a single database. - The computer is dedicated to the DB server. (all clients are on distant machines) - Each applications insert bursts of 100-400 xml nodes in each insert query. Between inserts there is a random delay. (seconds to minutes) - UPDINDEX=true - Autoflush is on - The delays start being unacceptable when CPU average reaches ~40% (on a dual core which means ~80% of a single CPU) - Disk i/o seems fine: iostat says write kB_wrtn/s is about 10% of max iorate supported by disk. (I also tried with an SSD with no better results) - After some trials, it seems the more nodes in the DB the more delays to insert. The delays seem proportional to the number of nodes in the DB. - The delays are also proportional to the number of inserter client application (it looks like the transaction monitor is responsible for this) So I suppose the bottleneck is the CPU. Is there a way to check where in Basex server the bottleneck is? Which functions crunch up all cpu? How can I be sure basex uses both CPU? Is there any chance to have multiple simultaneous write access in future versions? Thank-you, Best regards, Gilles. By the way, the output of 'info database': [BaseX]: info database Database Properties Name: logs2 Size: 202 GB Nodes: 81534781 Documents: 1 Binaries: 0 Timestamp: 24.08.2012 15:07:11 Resource Properties Timestamp: 24.08.2012 15:07:10 Encoding: UTF-8 Whitespace Chopping: ON Indexes Up-to-date: false Text Index: ON Attribute Index: ON Full-Text Index: OFF