Class SystemStoreAclSynchronizationTask
java.lang.Object
com.linkedin.venice.controller.authorization.SystemStoreAclSynchronizationTask
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Runnable
Currently, acl creation is still managed by Nuage but Nuage is not aware about the system stores. The long term plan
is to let Nuage call Venice controller's acl APIs to perform user store acl operations. Venice controller's acl APIs
will handle corresponding system store acls properly. In the meantime this task periodically scans and synchronizes
any misaligned acls between the user store and their corresponding system stores (if any). The task is one per
controller and only in the parent controller based on the availability of the AuthorizerService.
-
Constructor Summary
ConstructorDescriptionSystemStoreAclSynchronizationTask
(AuthorizerService authorizationService, VeniceParentHelixAdmin veniceParentHelixAdmin, long synchronizationCycleDelayInMs) -
Method Summary
-
Constructor Details
-
SystemStoreAclSynchronizationTask
public SystemStoreAclSynchronizationTask(AuthorizerService authorizationService, VeniceParentHelixAdmin veniceParentHelixAdmin, long synchronizationCycleDelayInMs)
-
-
Method Details
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-
run
public void run()Since acl synchronization could be a long-running task we want to make sure we can handle stale states from local variable, race conditions and early termination gracefully.
-