Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Improvement] implement pluggable catalog operation #2455

Closed
FANNG1 opened this issue Mar 7, 2024 · 0 comments · Fixed by #2477
Closed

[Improvement] implement pluggable catalog operation #2455

FANNG1 opened this issue Mar 7, 2024 · 0 comments · Fixed by #2477
Assignees
Labels
improvement Improvements on everything

Comments

@FANNG1
Copy link
Contributor

FANNG1 commented Mar 7, 2024

What would you like to be improved?

Gravitino provides a generic implementation of catalog operations, Some users may need some customization implementation to meet internal requirements. Provides a pluggable way to inject customer logic code to current interfaces, without mixing Gravitino code and customer code to reduce the abundance of maintaining Gravitino and custom logic.

design doc:
https://docs.google.com/document/d/1VNZ71mASBm5BNRivor3QIsqr2cbb4ro4WP-ND5-3Tp0/edit#heading=h.y8hqy3jdlqy4

How should we improve?

No response

@FANNG1 FANNG1 added the improvement Improvements on everything label Mar 7, 2024
@FANNG1 FANNG1 added this to the Gravitino 0.5.0 milestone Mar 7, 2024
jerryshao pushed a commit that referenced this issue Mar 14, 2024
### What changes were proposed in this pull request?

1. add a hacky catalog config 'ops-impl' to specify the custom catalog
operation
2. some changes to CatalogOperation
a. move `entity` from XXCatalogOperation constructor to initialize(), to
construct custom catalog operation using reflect easily.
b. move CatalogOperation#initialize() from XXCatalogOperation#newOps()
to BaseCatalog#Ops(), because initialize is the API, it should be called
explicitly by the framework not by specific XXCatalogOperation.

### Why are the changes needed?

Fix: #2455 

### Does this PR introduce _any_ user-facing change?
no

### How was this patch tested?
UT and IT
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Improvements on everything
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant