-
Notifications
You must be signed in to change notification settings - Fork 4.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
Fix dynamic cluster immediate resolution initialization bugs. #472
Conversation
* Ensure that the cluster initialization callback is invoked immediately if initialization has already been complete when it is set. * Don't invoke startResolve() for LogicalDnsCluster until we have the required TLS initialized. * Initialize StrictDnsClusterImpl resolve_targets_ before starting DNS resolution, since the resolve callback iterates over this. * Various unit tests and modified the H2 integration test to also cover logical_dns.
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.
tiny nit otherwise looks good. Obviously returning the active DNS query in the immediate resolve case is strange, but that will get fixed when we switch back to c-ares.
@@ -182,6 +182,9 @@ ClusterManagerImpl::ClusterManagerImpl(const Json::Object& config, ClusterManage | |||
|
|||
// To avoid threading issues, for those clusters that start with hosts already in them (like | |||
// the static cluster), we need to post an update onto each thread to notify them of the update. | |||
// We also require this for dynamic clusters where an immediate resolve |
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.
nit: Can you flow this comment out to 100 or reflow the entire thing to 80. It just looks strange.
* zh-traslation:docs/root/start/sandboxes/csrf.rst * fix translation issue
gRPC codec for kotlin We are able to hit an Envoy backed gRPC server from `lyft.com` We ran into some issues with testing (debug pull: envoyproxy/envoy-mobile#495). The first is outgoing ALPN is required for gRPC connections: envoyproxy/envoy-mobile#502. gRPC doesn't support disabling this option when starting up a service. We'll have to revisit this effort in the future. For now, we are primarily missing envoyproxy/envoy-mobile#494 for local Envoy library e2e testing Signed-off-by: Alan Chiu <[email protected]> Description: gRPC codec for kotlin Risk Level: low Testing: unit/end-to-end Docs Changes: n/a Release Notes: n/a [Optional Fixes #Issue] [Optional Deprecated:] Signed-off-by: JP Simard <[email protected]>
gRPC codec for kotlin We are able to hit an Envoy backed gRPC server from `lyft.com` We ran into some issues with testing (debug pull: envoyproxy/envoy-mobile#495). The first is outgoing ALPN is required for gRPC connections: envoyproxy/envoy-mobile#502. gRPC doesn't support disabling this option when starting up a service. We'll have to revisit this effort in the future. For now, we are primarily missing envoyproxy/envoy-mobile#494 for local Envoy library e2e testing Signed-off-by: Alan Chiu <[email protected]> Description: gRPC codec for kotlin Risk Level: low Testing: unit/end-to-end Docs Changes: n/a Release Notes: n/a [Optional Fixes #Issue] [Optional Deprecated:] Signed-off-by: JP Simard <[email protected]>
Ensure that the cluster initialization callback is invoked immediately
if initialization has already been complete when it is set.
Don't invoke startResolve() for LogicalDnsCluster until we have the
required TLS initialized.
Initialize StrictDnsClusterImpl resolve_targets_ before starting DNS
resolution, since the resolve callback iterates over this.
Various unit tests and modified the H2 integration test to also cover logical_dns.