Skip to content
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: anomaly with android_dns_cache_no_data and inconsistent dns #1211

Merged
merged 8 commits into from
Oct 10, 2023

Conversation

bassosimone
Copy link
Contributor

@bassosimone bassosimone commented Aug 24, 2023

Checklist

Summary

This diff changes the summary.go algorithm of Web Connectivity v0.4 to handle android_dns_cache_no_data as an anomaly when the DNS is inconsistent. We continue handling dns_nxdomain_error as an anomaly when the DNS is inconsistent, as demonstrated by the fact that the corresponding netem test is still passing.

This diff also bumps the version number to v0.4.3. Version v0.4.2 did not handle this case, which caused measurements to be marked as failed as documented by ooni/probe#2499.

This diff is also related to ooni/probe#2029, in the sense that it is slightly improving our analysis results when the is an NXDOMAIN error (even if it's masked by Android's DNS cache behavior).

While there, add empty lines to improve the code readability.

This diff changes the handling of android_dns_cache_no_data to mark it and
any other DNS inconsistenct as DNS anomaly.

The previous implementation was not handling any DNS inconsistency as an
anomaly, therefore I needed to adjust a bunch of summary_test.go tests.

Part of ooni/probe#2499 and
ooni/probe#2029.

I bumped the version number because this is a significant change
in the analysis algorithm implemented by the probe.
@bassosimone bassosimone requested a review from hellais as a code owner August 24, 2023 22:12
@bassosimone bassosimone changed the title fix(webconnectivity): handle android_dns_cache_no_data as dns anomaly fix: anomaly with android_dns_cache_no_data and inconsistent dns Oct 10, 2023
@bassosimone bassosimone merged commit 29e8c88 into master Oct 10, 2023
@bassosimone bassosimone deleted the issue/2029-bis branch October 10, 2023 14:07
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this pull request Feb 13, 2024
…i#1211)

## Checklist

- [x] I have read the [contribution
guidelines](https://github.com/ooni/probe-cli/blob/master/CONTRIBUTING.md)
- [x] reference issue for this pull request:
ooni/probe#2499
- [x] if you changed anything related to how experiments work and you
need to reflect these changes in the ooni/spec repository, please link
to the related ooni/spec pull request: N/A
- [x] if you changed code inside an experiment, make sure you bump its
version number

## Summary

This diff changes the `summary.go` algorithm of Web Connectivity v0.4 to
handle `android_dns_cache_no_data` as an anomaly when the DNS is
inconsistent. We continue handling `dns_nxdomain_error` as an anomaly
when the DNS is inconsistent, as demonstrated by the fact that the
corresponding netem test is still passing.

This diff also bumps the version number to v0.4.3. Version v0.4.2 did
not handle this case, which caused measurements to be marked as failed
as documented by ooni/probe#2499.

This diff is also related to ooni/probe#2029,
in the sense that it is slightly improving our analysis results when the
is an NXDOMAIN error (even if it's masked by Android's DNS cache
behavior).

While there, add empty lines to improve the code readability.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant