Skip to content

Conversation

@Lukasa
Copy link
Contributor

@Lukasa Lukasa commented Nov 26, 2024

Motivation:

In vanishingly rare situations it is possible for the AAAA results to come in on the same tick as the resolution delay timer completes. In those cases, depending on the ordering of the tasks, we can get situations where the resolution delay timer completion causes a crash.

Modifications:

Tolerate receiving the resolution delay timer after resolution completes.

Result:

Fewer crashes

Motivation:

In vanishingly rare situations it is possible for the AAAA results
to come in on the same tick as the resolution delay timer completes.
In those cases, depending on the ordering of the tasks, we can get
situations where the resolution delay timer completion causes a crash.

Modifications:

Tolerate receiving the resolution delay timer after resolution completes.

Result:

Fewer crashes
@Lukasa Lukasa added the 🔨 semver/patch No public API change. label Nov 26, 2024
Copy link
Member

@weissi weissi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome, thank you!

@Lukasa Lukasa enabled auto-merge (squash) November 26, 2024 16:03
@Lukasa Lukasa merged commit 16f19c0 into apple:main Nov 26, 2024
42 of 43 checks passed
@Lukasa Lukasa deleted the cb-resolver-crash branch November 26, 2024 16:28
Lukasa added a commit to Lukasa/swift-nio that referenced this pull request Nov 27, 2024
Motivation:

In vanishingly rare situations it is possible for the AAAA results to
come in on the same tick as the resolution delay timer completes. In
those cases, depending on the ordering of the tasks, we can get
situations where the resolution delay timer completion causes a crash.

Modifications:

Tolerate receiving the resolution delay timer after resolution
completes.

Result:

Fewer crashes

(cherry picked from commit 16f19c0)
Lukasa added a commit that referenced this pull request Nov 27, 2024
Motivation:

In vanishingly rare situations it is possible for the AAAA results to
come in on the same tick as the resolution delay timer completes. In
those cases, depending on the ordering of the tasks, we can get
situations where the resolution delay timer completion causes a crash.

Modifications:

Tolerate receiving the resolution delay timer after resolution
completes.

Result:

Fewer crashes

(cherry picked from commit 16f19c0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🔨 semver/patch No public API change.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants