[
https://issues.apache.org/jira/browse/DERBY-5623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
David Sitsky updated DERBY-5623:
--------------------------------
Attachment: derby-diff.txt
Patch file to remove synchronisation in FileMonitor.
> 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: 10.8.2.2
> Reporter: Knut Anders Hatlen
> Attachments: 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