georgew5656 commented on PR #14643: URL: https://github.com/apache/druid/pull/14643#issuecomment-1648609297
after thinking about this some more I feel like it's simpler to just leave the synchronized block in for run/joinAsync (run only happens whens tasks are run and joinAsync only happens when the overlord is restarted), and in doTask (only happens in worker threads). we can leave getPendingTasks, getKnownTasks, getRunningTasks unsynchronized and I think that will prevent most of the lock contention. i think this is a safer solution for druid 27 and we can maybe investigate this change to remove synchronization entirely after doing some more scale testing to see how much it helps. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
