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

Concurrent vs sequential DNS semantics #174

Open
coot opened this issue Nov 14, 2023 · 1 comment
Open

Concurrent vs sequential DNS semantics #174

coot opened this issue Nov 14, 2023 · 1 comment

Comments

@coot
Copy link

coot commented Nov 14, 2023

We noticed the difference between concurrent & sequential semantics. When resolvConcurrent is not set, resolveSequential will loop over errors and will try to return the first non error result, but if resolveConcurrent is set resolveConcurrent will run all queries in parallel doing first-to-finish synchronisation. The difference is that if the first value is an error resolveConcurrent will return the error unlike resolveSequential.

@kazu-yamamoto
Copy link
Owner

dnsext, a fork of dns, provides the same semantics with an STM magic:
https://github.com/kazu-yamamoto/dnsext/blob/586f42031459fdfc3e753352755d4f7af79ac1d6/dnsext-do53/DNS/Do53/Resolve.hs#L84
If you wish, I can bring it to dns.

coot added a commit to IntersectMBO/ouroboros-network that referenced this issue Nov 16, 2023
coot added a commit to IntersectMBO/ouroboros-network that referenced this issue Nov 16, 2023
coot added a commit to IntersectMBO/ouroboros-network that referenced this issue Nov 17, 2023
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

No branches or pull requests

2 participants