Oh, and one more observation. The IX table lock for the insert thread mentions LOCKCOUNT=476. I can only infer the meaning of the column (so this might perfectly normal), but the number of row locks of that connection is about 150 (it could not exceed 200, the number of inserts I do per transaction).
It sounds like the insert thread is doing more work than you expect it to be doing. You could investigate this using the logStatementText property to figure out what actual SQL is getting executed for each transaction in your application: http://db.apache.org/derby/docs/10.2/tuning/rtunproper43517.html thanks, bryan
