#43 thread-safety issue in ConnectionPoolManager.getInstance()

open
nobody
5
2009-04-28
2009-04-28
Anonymous
No

In v0.9.1 ConnectionPoolManager.getInstance() uses the double-checked locking idiom, which is not thread-safe.

See http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html for a description of the problem.
The section titled "Making it work for static singletons" describes a safe and inexpensive alternative.

Discussion