db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (Resolved) (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (DERBY-5623) Loosen up synchronization in FileMonitor
Date Thu, 23 Feb 2012 09:33:51 GMT

     [ https://issues.apache.org/jira/browse/DERBY-5623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

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: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message