-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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
kvserver: wire up replica_rac range controller factory #130197
kvserver: wire up replica_rac range controller factory #130197
Conversation
This is a bit rough but lmk what you think about the approach @sumeerbhola. |
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.
Reviewed 4 of 6 files at r2, all commit messages.
Reviewable status: complete! 1 of 0 LGTMs obtained (waiting on @kvoli)
pkg/kv/kvserver/kvflowcontrol/replica_rac2/processor.go
line 1032 at r2 (raw file):
// New creates a new RangeController. func (f RangeControllerFactoryImpl) New( ctx context.Context, state rangeControllerInitState,
so rangeControllerInitState
can stay package-private because this method isn't really called by anyone outside?
TYFTR! Yes, the processor is the only caller of New, so it can stay private. Extended CI failure is for an auto marked flaky test. bors r=sumeerbhola |
Merge conflict. |
`RangeControllerFactory` is used to create new `RangeController`s when a replica becomes the raft leader. Add the missing required fields in `RangeControllerFactory` and wire up the factory to sit on the `Store`. The `RangeControllerFactory` is one per-store, with callers providing range specific information when asking for a new `RangeController`, and the factory retaining one per-node or per-store controller dependencies. Resolves: cockroachdb#130185 Release note: None
f8ff890
to
79139c3
Compare
Rebased to pick up the 1st commit on master. |
bors r=sumeerbhola |
Build failed: |
The generated code check failed on github CI but passed on engflow. I'm going to re-queue without making any changes. bors r=sumeerbhola |
RangeControllerFactory
is used to create new
RangeControllers when a replica becomes the raft leader. Add the missing required fields in
RangeControllerFactoryand wire up the factory to sit on the
Store`.The
RangeControllerFactory
is one per-store, with callers providingrange specific information when asking for a new
RangeController
, andthe factory retaining one per-node or per-store controller dependencies.
Resolves: #130185
Release note: None