[ 
http://issues.apache.org/jira/browse/DERBY-1817?page=comments#action_12433581 ] 
            
Francois Orsini commented on DERBY-1817:
----------------------------------------

Great changes Knut.

My only comment thus far:

- I think there is a tiny and potential race condition upon retrieving the 
maximum number of threads to create in the network server (via getMaxThreads()) 
and adding a newly created one on the thread list. Not sure if this is possible 
if there is some some higher-level lock but it seems like 'max' could be reset 
while holding the runQueue lock (as we're synchronizing on 2 different objects) 
- It seems like the number of maxThreads can be updated at runtime (see 
processCommands()) - just raising this issue for now - maybe something to 
investigate if you haven't done so already. Just from a quick review.

Cheers.

> Race condition in network server's thread pool
> ----------------------------------------------
>
>                 Key: DERBY-1817
>                 URL: http://issues.apache.org/jira/browse/DERBY-1817
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Server
>    Affects Versions: 10.2.1.0
>            Reporter: Knut Anders Hatlen
>         Assigned To: Knut Anders Hatlen
>         Attachments: 1817.diff, 1817.stat
>
>
> If there is a free DRDAConnThread when a client connects to the network 
> server, the session is put into a queue from which one of the free 
> DRDAConnThreads can pick it up. However, if another client connects after the 
> session was put into the queue, but before the DRDAConnThread has picked it 
> up, one might end up with more sessions in the queue than there are free 
> threads. This can lead to hangs like the ones that we currently see in many 
> of Ole's tests (for instance checkDataSource - 
> http://www.multinet.no/~solberg/public/Apache/TinderBox_Derby/testlog/SunOS-5.10_i86pc-i386/440518-derbyall_diff.txt).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to