-
Notifications
You must be signed in to change notification settings - Fork 1.1k
DGS-22304: Refactor schema registry references from KafkaSchemaRegist… #3912
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
base: 8.0.x
Are you sure you want to change the base?
Conversation
…ry to SchemaRegistry
🎉 All Contributor License Agreements have been signed. Ready to merge. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
int MIN_VERSION = 1; | ||
int MAX_VERSION = Integer.MAX_VALUE; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why SchemaRegistry needs these 2 field? it looks more like common consts
|
||
void setRuleSetHandler(RuleSetHandler ruleSetHandler); | ||
|
||
HostnameVerifier getHostnameVerifier() throws SchemaRegistryStoreException; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not sure why this need to be a interface method
// Can be used to pass values between extensions | ||
Map<String, Object> properties(); | ||
|
||
MetadataEncoderService getMetadataEncoder(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The interface has grown quite large (60+ methods) by porting methods from KafkaSchemaRegistry into this interface, and covers multiple concerns:
- Data CRUD operations
- Caching operations (e.g., clear cache methods)
- Multi-tenancy
- Leader election
- Forwarding operations (methods ending with OrForward)
- Extension hooks (handlers, custom handlers)
Have we thought about how this interface will be implemented with RM integration? It might be worth clarifying whether it makes sense to port all of these methods here, or if some should remain separate, or introduce some sub-interfaces for separation of concern
FYI, getMetadataEncoder() method is only used in tests
so does myIdentity()
…ry to SchemaRegistry
What
Use SchemaRegistry instead of KafkaSchemaRegistry where applicable.
Checklist
Please answer the questions with Y, N or N/A if not applicable.
References
JIRA:
Test & Review
Open questions / Follow-ups