Kezhu Wang created CURATOR-729: ---------------------------------- Summary: PersistentWatcher loops infinitely if curator get closed Key: CURATOR-729 URL: https://issues.apache.org/jira/browse/CURATOR-729 Project: Apache Curator Issue Type: Bug Affects Versions: 5.7.1 Reporter: Kezhu Wang Assignee: Enrico Olivelli
Someone reported at https://github.com/apache/curator/pull/464#issuecomment-2572419772 {noformat} "Curator-ConnectionStateManager-0" #441 daemon prio=5 os_prio=0 cpu=53015334.98ms elapsed=240410.71s tid=0x00007fa9b0115000 nid=0x4b2 runnable [0x00007fa97a360000] java.lang.Thread.State: RUNNABLE at org.apache.curator.framework.imps.OperationAndData.<init>(OperationAndData.java:88) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:114) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:953) at org.apache.curator.framework.imps.CuratorFrameworkImpl.abortOperation(CuratorFrameworkImpl.java:726) at org.apache.curator.framework.imps.CuratorFrameworkImpl.handleBackgroundOperationException(CuratorFrameworkImpl.java:990) at org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:1055) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:652) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:112) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:953) at org.apache.curator.framework.imps.CuratorFrameworkImpl.closeOperation(CuratorFrameworkImpl.java:746) at org.apache.curator.framework.imps.CuratorFrameworkImpl.queueOperation(CuratorFrameworkImpl.java:777) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sleepAndQueueOperation(CuratorFrameworkImpl.java:1064) at org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:1027) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:652) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:112) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:953) at org.apache.curator.framework.imps.CuratorFrameworkImpl.abortOperation(CuratorFrameworkImpl.java:726) at org.apache.curator.framework.imps.CuratorFrameworkImpl.handleBackgroundOperationException(CuratorFrameworkImpl.java:990) at org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:1055) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:652) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:112) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:953) at org.apache.curator.framework.imps.CuratorFrameworkImpl.abortOperation(CuratorFrameworkImpl.java:726) at org.apache.curator.framework.imps.CuratorFrameworkImpl.handleBackgroundOperationException(CuratorFrameworkImpl.java:990) at org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:1055) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:652) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:112) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:953) at org.apache.curator.framework.imps.CuratorFrameworkImpl.closeOperation(CuratorFrameworkImpl.java:746) at org.apache.curator.framework.imps.CuratorFrameworkImpl.queueOperation(CuratorFrameworkImpl.java:777) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sleepAndQueueOperation(CuratorFrameworkImpl.java:1064) at org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:1027) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:652) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:112) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:953) at org.apache.curator.framework.imps.CuratorFrameworkImpl.closeOperation(CuratorFrameworkImpl.java:746) at org.apache.curator.framework.imps.CuratorFrameworkImpl.queueOperation(CuratorFrameworkImpl.java:777) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sleepAndQueueOperation(CuratorFrameworkImpl.java:1064) at org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:1027) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:652) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:112) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:953) at org.apache.curator.framework.imps.CuratorFrameworkImpl.closeOperation(CuratorFrameworkImpl.java:746) at org.apache.curator.framework.imps.CuratorFrameworkImpl.queueOperation(CuratorFrameworkImpl.java:777) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sleepAndQueueOperation(CuratorFrameworkImpl.java:1064) at org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:1027) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:652) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:112) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:953) at org.apache.curator.framework.imps.CuratorFrameworkImpl.closeOperation(CuratorFrameworkImpl.java:746) at org.apache.curator.framework.imps.CuratorFrameworkImpl.queueOperation(CuratorFrameworkImpl.java:777) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sleepAndQueueOperation(CuratorFrameworkImpl.java:1064) at org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:1027) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:652) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:112) at org.apache.curator.framework.imps.AddWatchBuilderImpl.forPath(AddWatchBuilderImpl.java:36) at org.apache.curator.framework.recipes.watch.PersistentWatcher.reset(PersistentWatcher.java:137) at org.apache.curator.framework.recipes.watch.PersistentWatcher.lambda$reset$3(PersistentWatcher.java:129) at org.apache.curator.framework.recipes.watch.PersistentWatcher$$Lambda$2693/1366017559.processResult(Unknown Source) {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)