-
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
dns: fix defunct fd bug in apple resolver #13641
Conversation
Signed-off-by: Jose Nino <jnino@lyft.com>
Signed-off-by: Jose Nino <jnino@lyft.com>
Signed-off-by: Jose Nino <jnino@lyft.com>
Signed-off-by: Jose Nino <jnino@lyft.com>
Signed-off-by: Jose Nino <jnino@lyft.com>
My and @rebello95's thinking is that we can get this PR merged, and the bug fixed for users of this resolver. And I can work on the (kind of unorthodox) additional unit tests in parallel; I can probably get a rough draft of the PR tomorrow. |
ASSERT(events & Event::FileReadyType::Read); | ||
DNSServiceProcessResult(main_sd_ref_); | ||
DNSServiceErrorType error = DNSServiceProcessResult(main_sd_ref_); |
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.
I verified that all other calls to the DNSService API that return DNSServiceErrorType
are handled.
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.
LGTM. Better tests would be appreciated.
CI failure looks legit. /wait |
Signed-off-by: Jose Nino <jnino@lyft.com>
/retest |
Retrying Azure Pipelines. |
/retest |
🙀 Error while processing event:
|
Signed-off-by: Jose Nino <jnino@lyft.com>
Signed-off-by: Jose Nino <jnino@lyft.com>
Description: updates envoy to include: envoyproxy/envoy#13641 which fixes a corner case affecting iOS devices. Updates envoy mobile code to reflect changes in upstream envoy. Signed-off-by: Jose Nino <jnino@lyft.com>
* master: (22 commits) ci: various improvements (envoyproxy#13660) dns: fix defunct fd bug in apple resolver (envoyproxy#13641) build: support ppc64le with wasm (envoyproxy#13657) [fuzz] Added random load balancer fuzz (envoyproxy#13400) dependencies: compute and check release dates via GitHub API. (envoyproxy#13582) mac ci: try ignoring update failure (envoyproxy#13658) watchdog: Optimize WatchdogImpl::touch in preparation to more frequent petting of the watchdog. (envoyproxy#13103) typos: fix a couple 'enovy' mispellings (envoyproxy#13645) lua: Expose stream info downstreamLocalAddress and downstreamDirectRemoteAddress for Lua filter (envoyproxy#13536) tap: fix upstream streamed transport socket taps (envoyproxy#13638) Revert "delay health checks until transport socket secrets are ready. (envoyproxy#13516)" (envoyproxy#13639) Watchdog: use abort action as a default if killing is enabled. (envoyproxy#13523) [fuzz] Fixed divide by zero bug (envoyproxy#13545) wasm: flip the meaning of the "repository" in envoy_wasm_cc_binary(). (envoyproxy#13621) fix: record recovered local address (envoyproxy#13581) docs: fix incorrect compressor filter doc (envoyproxy#13611) docs: clean up docs for azp migration (envoyproxy#13558) wasm: fix building Wasm example. (envoyproxy#13619) test: Refactor flood tests into a separate test file (envoyproxy#13556) wasm: re-enable tests with precompiled modules. (envoyproxy#13583) ... Signed-off-by: Michael Puncel <mpuncel@squareup.com>
Commit Message: fix defunct fd bug in apple resolver.
Risk Level: med - necessary fix for apple-based envoy deploys.
Testing: local testing in Envoy Mobile with lifecycle events that force fd failures. This could be better tested if the Apple API was wrapped and replaced in tests to ensure that the AppleDnsResolverImpl code has defensive logic against given API behavior. This could be done in a subsequent PR.
Signed-off-by: Jose Nino jnino@lyft.com