Skip to content

Conversation

drempapis
Copy link
Contributor

It seems that there is a race condition where this call does not pick up all three nodes that this assert is expecting.

To mitigate and test the issue, I added an "assertBusy" busy spin in the nodes lookup, waiting until all three nodes appear.

Solves #116617 and #116618

@drempapis drempapis added >bug Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch :Search Foundations/Search Catch all for Search Foundations v9.0.0 v8.18.0 labels Nov 27, 2024
@drempapis drempapis self-assigned this Nov 27, 2024
@elasticsearchmachine
Copy link
Collaborator

Hi @drempapis, I've created a changelog YAML for you.

@drempapis drempapis marked this pull request as ready for review November 27, 2024 10:10
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-search-foundations (Team:Search Foundations)

@drempapis
Copy link
Contributor Author

@javanna Is this approach enough to merge the muted tests for v9.0.0 and v8.18.0?

}

public static void configureRemoteClusters(List<Node> remoteNodes) throws Exception {
assertThat(remoteNodes, hasSize(3));
Copy link
Contributor

Choose a reason for hiding this comment

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

I don't think assertBusy will help you here? The list is just created one by a call to getNodes(.. so it won't ever change?

Copy link
Contributor Author

@drempapis drempapis Nov 27, 2024

Choose a reason for hiding this comment

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

You are right. I added the ensureHealth with a timeout to verify that all three nodes are up and running before requesting the nodes' state.

Copy link
Contributor

@original-brownbear original-brownbear left a comment

Choose a reason for hiding this comment

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

LGTM, if CI's happy I'm happy :) thanks!

Copy link
Contributor

@original-brownbear original-brownbear left a comment

Choose a reason for hiding this comment

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

One second I'm a little unsure here, discussing in Slack

@drempapis
Copy link
Contributor Author

In this pr #116577, the boolean bwc_tests_enabled in elasticsearch/build.gradle did not flip value before merging, provoking some compatibility failures, which the elastic search machine automatically reported. There is nothing to do here; just unmute the two tests.

@drempapis drempapis added the auto-backport Automatically create backport pull requests when merged label Nov 28, 2024
@elasticsearchmachine
Copy link
Collaborator

Hi @drempapis, I've updated the changelog YAML for you.

@drempapis drempapis merged commit f096c31 into elastic:main Nov 28, 2024
16 checks passed
@elasticsearchmachine
Copy link
Collaborator

💔 Backport failed

Status Branch Result
8.x Commit could not be cherrypicked due to conflicts

You can use sqren/backport to manually backport by running backport --upstream elastic/elasticsearch --pr 117618

elasticsearchmachine pushed a commit that referenced this pull request Nov 28, 2024
This will backport the following commits from main to 8.x: #117618
@drempapis
Copy link
Contributor Author

We manually backported changes to v8.18.0 #117729

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

Labels

auto-backport Automatically create backport pull requests when merged >bug :Search Foundations/Search Catch all for Search Foundations Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch v8.18.0 v9.0.0

3 participants