-
Notifications
You must be signed in to change notification settings - Fork 6
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
Fully refactor the entire codebase. #22
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Refactor and cleanup config definition in TOML file by removing redundant keys, renaming and consolidating topic config. - Refactor internal functions with cleaner config sharing and handling. - Refactor internal topic maps to map:struct{} to carry metadata including partition.
Can you rebase with develop and raise it to develop? |
337b717
to
006d35d
Compare
This is a large breaking change that almost fully refactors and rewrites major parts of the codebase. - Split and cleanly separate the main package into relay/producer/source_pool controllers. - Restructure files and internal packages. - Rewrite, simplify, and detatch polling and healthcheck logic spread across relay and consumer sources into cleaner abstractions. - Simplify relay to only do relaying and not handle server management. - Rewrite the old multi-config based consumer into a new "source pool" controller that acts like a connection pool and hides away all server management and healthcheck complexities. - Remove and simplify redundant util methods structs. - Simplify and rewrite orchestration logic in multiple places: relay, source pool management, healthchecks. - Simplify config structure and config initialization across controllers. - Simplify main.go to do initialization and composition only.
Co-authored-by: Lakshay Kalbhor <lakshay.kalbhor@zerodha.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fully refactor the entire codebase.
relay/producer/source_pool controllers.
across relay and consumer sources into cleaner abstractions.
controller that acts like a connection pool and hides away all server
management and healthcheck complexities.
relay, source pool management, healthchecks.
controllers.