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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to