Oracle (NG) plugin may deadlock under high load
-----------------------------------------------
Key: GEOS-3605
URL: http://jira.codehaus.org/browse/GEOS-3605
Project: GeoServer
Issue Type: Bug
Reporter: Andrea Aime
Assignee: Andrea Aime
Priority: Critical
Fix For: 2.0.1
The oracle datastore has to recognize if a certain column is geodetic or not. To do so it rolls out a query on a second connection.
If n connections get in and grab the first connection to read data, the size of the connection pool is n, and bad luck makes it flow so that the second connection is requested only when the pool is already starved, a deadlock occurs. This requires quite a bit of bad luck but it's easy to trigger it using an artificial workload involving n*2 parallel clients that do requests one after the other without pauses.
The code should be changed so that it requires one connection only to deliver back a response no matter what the current workload is.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira