[Prev] Thread [Next]  |  [Prev] Date [Next]

[jira] [Resolved] (DERBY-5623) Loosen up synchronization in FileMonitor Knut Anders Hatlen (Resolved) (JIRA) Thu Feb 23 02:00:48 2012


Knut Anders Hatlen resolved DERBY-5623.

       Resolution: Fixed
    Fix Version/s:
         Assignee: Knut Anders Hatlen

I committed the patch with revision 1292724. Marking the issue as resolved.
> Loosen up synchronization in FileMonitor
> ----------------------------------------
>                 Key: DERBY-5623
>                 URL: https://issues.apache.org/jira/browse/DERBY-5623
>             Project: Derby
>          Issue Type: Improvement
>          Components: Services
>    Affects Versions:
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>             Fix For:
>         Attachments: d5623-1.diff, derby-diff.txt
> When opening a large number of databases in parallel, many threads get stuck 
> for a long time in FileMonitor, as reported in this thread on derby-user:
> http://mail-archives.apache.org/mod_mbox/db-derby-user/201202.mbox/%3CCAEQ8c00vx0yFrwWyjm%3Dt_Yd%2BuuKGOL%3DSgpYfQuYghOOPgdN8-w%40mail.gmail.com%3E
> The synchronization in FileMonitor is only needed because the monitor 
> instance is also used as a shared PrivilegedExceptionAction instance. Since 
> all databases share one FileMonitor instance, threads that access any of 
> these methods are serialized. If each method created its own PrivilegedAction 
> or PrivilegedExceptionAction instance instead of using the monitor's run() 
> method, these methods wouldn't need synchronization.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
For more information on JIRA, see: http://www.atlassian.com/software/jira