To debug lock timeout errors, set derby.locks.monitor=true and derby.locks.deadlockTrace=true in derby.properties. This will print the lock table information to the derby.log when the timeout happens. If you also set derby.language.logStatementText=true, then all the statements executed on the system will be written out to the derby.log
If you have 10,000 front-end users, having a connection pool of 10,000 would be shear insanity. 1000 still horrible. Even 100 connections, overkill. You want a small pool of a few dozen connections at most, and you want the rest of the application threads blocked on the pool awaiting connections.
imagine three threads (Tn=3), each of which requires four connections to perform some task (Cm=4). The pool size required to ensure that deadlock is never possible is:
pool size = 3 x (4 - 1) + 1 = 10
The "International Journal of Critical Computer-Based Systems" (IJCCBS) is a quarterly research journal by Inderscience Publishers. It focuses on engineering and verification of complex computer-based systems (where complex means large, distributed and heterogeneous) in critical applications, with special emphasis on model-based approaches and industrial case-studies. Critical computer-based systems include real-time control, fly/brake-by-wire, on-line transactional and web servers, biomedical apparels, networked devices for telecommunications, environmental monitoring, infrastructure protection, etc.
V. Saraswat, und R. Jagadeesan. CONCUR 2005 – Concurrency Theory, Volume 3653 von Lecture Notes in Computer Science, Seite 353--367. Springer, (September 2005)
N. Kaveh, und W. Emmerich. ESEC/FSE-9: Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering, 26, Seite 44--51. New York, NY, USA, ACM Press, (September 2001)