Skip to content

Fix ref-counting in DisruptableMockTransport#92245

Merged
elasticsearchmachine merged 4 commits intoelastic:mainfrom
DaveCTurner:2022-12-08-DisruptableMockTransport-reboot-cleanup
Dec 12, 2022
Merged

Fix ref-counting in DisruptableMockTransport#92245
elasticsearchmachine merged 4 commits intoelastic:mainfrom
DaveCTurner:2022-12-08-DisruptableMockTransport-reboot-cleanup

Conversation

@DaveCTurner
Copy link
Copy Markdown
Member

Today DisruptableMockTransport leaks refs to transport messages in various ways if the transport is rebooted. This commit adds the missing ref-count handling.

Closes #91837

Today `DisruptableMockTransport` leaks refs to transport messages in
various ways if the transport is rebooted. This commit adds the missing
ref-count handling.

Closes elastic#91837
@DaveCTurner DaveCTurner added >test Issues or PRs that are addressing/adding tests :Distributed/Cluster Coordination Cluster formation and cluster state publication, including cluster membership and fault detection. v8.6.1 v8.7.0 labels Dec 8, 2022
@DaveCTurner DaveCTurner requested a review from pxsalehi December 8, 2022 17:22
@elasticsearchmachine elasticsearchmachine added the Team:Distributed Meta label for distributed team. label Dec 8, 2022
@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Pinging @elastic/es-distributed (Team:Distributed)

Copy link
Copy Markdown
Member

@pxsalehi pxsalehi left a comment

Choose a reason for hiding this comment

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

LGTM. Is there a reason we don't backport to 7.17? The failure wouldn't happen on 7.17? (also some classes are moved here and on 7.17 they'd be somewhere else.)

@DaveCTurner
Copy link
Copy Markdown
Member Author

In practice I think this only really became a problem with the introduction of JoinValidationService in #85380. I'd rather leave 7.17 alone, even though the production-code changes in this PR are very small. At least until we see that that this is flaky enough to warrant the backport.

@DaveCTurner
Copy link
Copy Markdown
Member Author

@elasticmachine update branch

@DaveCTurner DaveCTurner added auto-merge-without-approval Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) auto-backport-and-merge labels Dec 12, 2022
@DaveCTurner
Copy link
Copy Markdown
Member Author

@elasticmachine please run elasticsearch-ci/packaging-tests-windows-sample

@elasticsearchmachine elasticsearchmachine merged commit f8636c6 into elastic:main Dec 12, 2022
@DaveCTurner DaveCTurner deleted the 2022-12-08-DisruptableMockTransport-reboot-cleanup branch December 12, 2022 15:26
DaveCTurner added a commit to DaveCTurner/elasticsearch that referenced this pull request Dec 12, 2022
Today `DisruptableMockTransport` leaks refs to transport messages in
various ways if the transport is rebooted. This commit adds the missing
ref-count handling.

Closes elastic#91837
elasticsearchmachine pushed a commit that referenced this pull request Dec 12, 2022
Today `DisruptableMockTransport` leaks refs to transport messages in
various ways if the transport is rebooted. This commit adds the missing
ref-count handling.

Closes #91837
DaveCTurner added a commit to DaveCTurner/elasticsearch that referenced this pull request Dec 12, 2022
We simulate sending traffic along a blackholed connection with a
disconnection exception that we withold until far into the future. Today
this exception is delivered using the transport of the responding node,
but it should be the requesting node. This commit fixes that.

Not sure how this _ever_ worked, but we made things stricter in elastic#92245
and that meant this bug led to test failures.

Closes elastic#92307
elasticsearchmachine pushed a commit that referenced this pull request Dec 13, 2022
We simulate sending traffic along a blackholed connection with a
disconnection exception that we withold until far into the future. Today
this exception is delivered using the transport of the responding node,
but it should be the requesting node. This commit fixes that.

Not sure how this _ever_ worked, but we made things stricter in #92245
and that meant this bug led to test failures.

Closes #92307
DaveCTurner added a commit to DaveCTurner/elasticsearch that referenced this pull request Dec 13, 2022
We simulate sending traffic along a blackholed connection with a
disconnection exception that we withold until far into the future. Today
this exception is delivered using the transport of the responding node,
but it should be the requesting node. This commit fixes that.

Not sure how this _ever_ worked, but we made things stricter in elastic#92245
and that meant this bug led to test failures.

Closes elastic#92307
elasticsearchmachine pushed a commit that referenced this pull request Dec 13, 2022
We simulate sending traffic along a blackholed connection with a
disconnection exception that we withold until far into the future. Today
this exception is delivered using the transport of the responding node,
but it should be the requesting node. This commit fixes that.

Not sure how this _ever_ worked, but we made things stricter in #92245
and that meant this bug led to test failures.

Closes #92307
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

auto-merge-without-approval Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) :Distributed/Cluster Coordination Cluster formation and cluster state publication, including cluster membership and fault detection. Team:Distributed Meta label for distributed team. >test Issues or PRs that are addressing/adding tests v8.6.1 v8.7.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[CI] CoordinatorTests testCannotJoinClusterWithDifferentUUID failing

4 participants