
[ http://jira.qos.ch/browse/LBCLASSIC-234?page=com.atlassian.jira.plugin.syste... ] uri unger commented on LBCLASSIC-234: ------------------------------------- Ok, now regarding regenerating this bug using your ReconfigurePerf test. I have made several minor changes in your test code as follows: 1. totalTestDuration was very short, only 1100 ms (i'm testing on windows); i changed it to something like a few minutes to allow me to actually see something in jprofiler. 2. very important: in scan_perf.xml, i have changed the default root level from debug to error. this is becuase I must not really write any log to any file, or otherwise the io times would dominate the running time and i won't be able to see any significant finding regarding the issue in the profiler. Sure enough, after doing these changes, i see locking times of more than 200ms using only 50 concurrent threads in jprofiler. I also added a screen capture of the threads as seen in the thread history view in fprofiler. the little red sections are the blocking times. uri
CLONE -Excessive synchronization in ReconfigureOnChangeFilter.decide --------------------------------------------------------------------
Key: LBCLASSIC-234 URL: http://jira.qos.ch/browse/LBCLASSIC-234 Project: logback-classic Issue Type: Bug Affects Versions: 0.917 Reporter: uri unger Assignee: Ceki Gulcu Priority: Critical Attachments: screenshot-1.jpg
The synchronization in ReconfigureOnChangeFilter.decide hurts scalability. It seems unnecessary to serialize the code in changeDetected -- it should be possible to use atomic updates of nextCheck and lastModified and only serialize the actual reconfiguration.
-- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.qos.ch/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira