[EPIC] Gravitino event listener bus system
Describe the proposal
Gravitino event listener bus system allows users to add pluggable hooks to changing events, like record audit logs, double write to different catalogs in the Iceberg REST server, etc. and we need to support async and sync mode for different scene
Task list
- [x] #2413
- [x] #2766
- [x] #2767
- [x] #2769
- [x] #2821
- [x] #2822
- [x] #2920
- [x] #2943
- [x] #2966
- [x] #2969
- [x] #2980
- [x] #3023
@FANNG1 Cool. can this help to collect the audit log as I mentioned in https://github.com/datastrato/gravitino/issues/2061?
yes, saving audit log is one of the design targets. But the event listener bus system provides a core mechanism to dispatch events, we may need a pluggable event consumer to save audit info to the Gravitino entity store or Other user storage. @coolderli
@FANNG1 can you please add all the subtasks to the task list above.
@FANNG1 This Issue seems to be done as well. and there is only one improvement task left #6881
We could leave it open as we may support other events for Gravitino