balancer: existing LB policies must update picker synchronously
https://github.com/grpc/grpc-go/issues/5211 talks about delaying picker updates in LB policies which have child policies, until the configs have been propagated to all the children. It also talks about auditing existing code to ensure that existing LB policy implementations update their pickers synchronously upon receipt of a config update.
We will use this issue to ensure that we have audited all existing LB policy implementations, and update docs to indicate the same.
- [x] cds_experimental: https://github.com/grpc/grpc-go/issues/7211
- [ ] xds_cluster_impl_experimental: https://github.com/grpc/grpc-go/issues/7210
- [x] xds_cluster_manager_experimental
- [ ] cluster_resolver_experimental: https://github.com/grpc/grpc-go/pull/7562
- [x] outlier_detection_experimental
- [x] priority_experimental
- [x] ring_hash_experimental
- [x] round_robin
- [x] pick_first
- [ ] grpclb
- [ ] rls_experimental: https://github.com/grpc/grpc-go/issues/7212
- [x] weighted_round_robin
- [x] weighted_target_experimental
- [ ] update documentation to indicate that LB policies must update their pickers synchronously upon receipt of config udpate
@easwars I see ringhash_experimental policy already has picker update in sync with the config update here and similarly i see the same for many other lb policies. Am I missing something here?
@easwars I see ringhash_experimental policy already has picker update in sync with the config update here and similarly i see the same for many other lb policies. Am I missing something here?
Yes, you are right about the ringhash LB policy. I updated the PR description to reflect this.
The same needs to be done for other policies in the list and once confirmed, the PR description needs to be updated accordingly. Thanks.
@easwars What about outlier_detection_experimental here, i believe its already done for outlier_detection_experimental as well as many others already?