You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@fluss.apache.org by "gyang94 (via GitHub)" <gi...@apache.org> on 2026/05/28 02:35:59 UTC
[I] [test] Unstable test in DefaultAuthorizerTest.testLocalConcurrentModificationOfResourceAcls [fluss]
gyang94 opened a new issue, #3394:
URL: https://github.com/apache/fluss/issues/3394
### Search before asking
- [x] I searched in the [issues](https://github.com/apache/fluss/issues) and found nothing similar.
### Fluss version
0.9.0 (latest release)
### Please describe the bug 🐞
Unstable test in DefaultAuthorizerTest.testLocalConcurrentModificationOfResourceAcls
There may be race condition
```
Test org.apache.fluss.server.authorizer.DefaultAuthorizerTest.testLocalConcurrentModificationOfResourceAcls[testLocalConcurrentModificationOfResourceAcls()] is running.
--------------------------------------------------------------------------------
21:31:53,904 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.zk.ZooKeeperUtils [] - Using '/fluss' as Zookeeper root path to stores its entries.
21:31:53,905 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.CuratorFrameworkImpl [] - Starting
21:31:53,906 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.CuratorFrameworkImpl [] - Default schema
21:31:53,906 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.zk.ZooKeeperUtils [] - Using '/fluss' as Zookeeper root path to stores its entries.
21:31:53,906 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.CuratorFrameworkImpl [] - Starting
21:31:53,907 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.CuratorFrameworkImpl [] - Default schema
21:31:53,908 [ForkJoinPool-67-worker-3-EventThread] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.state.ConnectionStateManager [] - State change: CONNECTED
21:31:53,909 [ForkJoinPool-67-worker-3-EventThread] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.state.ConnectionStateManager [] - State change: CONNECTED
21:31:53,910 [ForkJoinPool-67-worker-3-EventThread] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.EnsembleTracker [] - New config event received: {}
21:31:53,910 [ForkJoinPool-67-worker-3-EventThread] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.EnsembleTracker [] - New config event received: {}
21:31:53,911 [ForkJoinPool-67-worker-3-EventThread] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.EnsembleTracker [] - New config event received: {}
21:31:53,911 [ForkJoinPool-67-worker-3-EventThread] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.EnsembleTracker [] - New config event received: {}
21:31:53,920 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.zk.ZooKeeperClient [] - insert acl node Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'} with value [AccessControlEntry{principal=FlussPrincipal{name='user1', type='User'}, permissionType=ANY, host='host-1', operationType=READ}]
21:31:53,928 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.zk.ZooKeeperClient [] - addColumn acl change notification for resource Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'}
21:31:53,929 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.zk.ZooKeeperClient [] - update acl node Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'} with value [AccessControlEntry{principal=FlussPrincipal{name='user1', type='User'}, permissionType=ANY, host='host-1', operationType=READ}, AccessControlEntry{principal=FlussPrincipal{name='user2', type='User'}, permissionType=ANY, host='host-2', operationType=READ}]
21:31:53,931 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.zk.ZooKeeperClient [] - addColumn acl change notification for resource Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'}
21:31:53,932 [Curator-SafeNotifyService-0] INFO org.apache.fluss.server.authorizer.DefaultAuthorizer [] - Processing Acl change notification for Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'}, acls : VersionedAcls{acls=[AccessControlEntry{principal=FlussPrincipal{name='user1', type='User'}, permissionType=ANY, host='host-1', operationType=READ}, AccessControlEntry{principal=FlussPrincipal{name='user2', type='User'}, permissionType=ANY, host='host-2', operationType=READ}], zkVersion=1}
21:31:53,932 [Curator-SafeNotifyService-0] INFO org.apache.fluss.server.authorizer.DefaultAuthorizer [] - Processing Acl change notification for Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'}, acls : VersionedAcls{acls=[AccessControlEntry{principal=FlussPrincipal{name='user1', type='User'}, permissionType=ANY, host='host-1', operationType=READ}, AccessControlEntry{principal=FlussPrincipal{name='user2', type='User'}, permissionType=ANY, host='host-2', operationType=READ}], zkVersion=1}
21:31:53,933 [Curator-SafeNotifyService-0] INFO org.apache.fluss.server.authorizer.DefaultAuthorizer [] - Processing Acl change notification for Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'}, acls : VersionedAcls{acls=[AccessControlEntry{principal=FlussPrincipal{name='user1', type='User'}, permissionType=ANY, host='host-1', operationType=READ}, AccessControlEntry{principal=FlussPrincipal{name='user2', type='User'}, permissionType=ANY, host='host-2', operationType=READ}], zkVersion=1}
21:31:53,936 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.zk.ZooKeeperClient [] - addColumn acl change notification for resource Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'}
21:31:53,936 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.authorizer.ZkNodeChangeNotificationWatcher [] - Stopping ZkNodeChangeNotificationWatcher
21:31:53,936 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.authorizer.ZkNodeChangeNotificationWatcher [] - Stopping ZkNodeChangeNotificationWatcher
21:31:53,937 [ForkJoinPool-67-worker-3] INFO org.apache.fluss.server.zk.ZooKeeperClient [] - Closing...
21:31:53,937 [ Curator-Framework-0] INFO org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.CuratorFrameworkImpl [] - backgroundOperationsLoop exiting
21:31:53,937 [Curator-SafeNotifyService-0] INFO org.apache.fluss.server.authorizer.DefaultAuthorizer [] - Processing Acl change notification for Resource{type=DATABASE, name='foo-c030509d-f669-48a1-878e-569488ae0d67'}, acls : VersionedAcls{acls=[], zkVersion=-2}
21:31:53,937 [Curator-SafeNotifyService-0] ERROR org.apache.fluss.server.authorizer.ZkNodeChangeNotificationWatcher [] - Error while purging obsolete notification change for path = /fluss-acl-changes/acl_changes_0000000000
java.lang.IllegalStateException: Expected state [STARTED] was [STOPPED]
at org.apache.fluss.shaded.curator5.org.apache.curator.shaded.com.google.common.base.Preconditions.checkState(Preconditions.java:821)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.CuratorFrameworkImpl.checkState(CuratorFrameworkImpl.java:457)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.imps.CuratorFrameworkImpl.checkExists(CuratorFrameworkImpl.java:484)
at org.apache.fluss.server.zk.ZooKeeperClient.getStat(ZooKeeperClient.java:1605)
at org.apache.fluss.server.authorizer.ZkNodeChangeNotificationWatcher.purgeObsoleteNotifications(ZkNodeChangeNotificationWatcher.java:142)
at org.apache.fluss.server.authorizer.ZkNodeChangeNotificationWatcher.processNotifications(ZkNodeChangeNotificationWatcher.java:112)
at org.apache.fluss.server.authorizer.ZkNodeChangeNotificationWatcher$ZkNodeChangeNotificationListener.childEvent(ZkNodeChangeNotificationWatcher.java:165)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.recipes.cache.PathChildrenCacheListenerWrapper.sendEvent(PathChildrenCacheListenerWrapper.java:84)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.recipes.cache.PathChildrenCacheListenerWrapper.event(PathChildrenCacheListenerWrapper.java:49)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.recipes.cache.CuratorCacheListenerBuilderImpl$2.lambda$event$0(CuratorCacheListenerBuilderImpl.java:149)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.recipes.cache.CuratorCacheListenerBuilderImpl$2.event(CuratorCacheListenerBuilderImpl.java:149)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.recipes.cache.CuratorCacheImpl.lambda$putStorage$6(CuratorCacheImpl.java:287)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.listen.MappingListenerManager.lambda$forEach$0(MappingListenerManager.java:92)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.listen.MappingListenerManager.forEach(MappingListenerManager.java:89)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.listen.StandardListenerManager.forEach(StandardListenerManager.java:89)
at org.apache.fluss.shaded.curator5.org.apache.curator.framework.recipes.cache.CuratorCacheImpl.lambda$callListeners$9(CuratorCacheImpl.java:301)
at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1736)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
```
### Solution
_No response_
### Are you willing to submit a PR?
- [ ] I'm willing to submit a PR!
--
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: issues-unsubscribe@fluss.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org