ctubbsii commented on PR #5253: URL: https://github.com/apache/accumulo/pull/5253#issuecomment-2588989642
While this fixes the issue for ZookeeperLockChecker's use in tablet locator code, I could not quite figure out where the issue was exactly in the ManagerAssignmentIT. The change I made avoids the problem, but I suspect there's another place where the memoized context.getServerPaths() result is leaking outside the lifecycle of the context, into some thread pools or something that outlive the client, and that was the cause of the problems I saw in ManagerAssignmentIT. I can avoid that test failing for now, but it may still be a problem. If there's still an issue, it will be easier to track down after refactoring the locator cache code to no longer use the static singleton. It is the last remaining static singleton that I'm aware of. However, even after removing the static singleton, it's still possible that the ZooSession whose lifecycle is bounded by the lifecycle of the context (ServerContext or AccumuloClient/ClientContext) can leak out into thread pools that outlive the context, so we should continue to take care to avoid that and to bind those thread pools to the context and shut them down properly when the context is closed. -- 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]
