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

chore(atomix): extract flaky version updates from testSwimProtocol #4647

Merged
merged 1 commit into from
Jun 2, 2020

Conversation

npepinpe
Copy link
Member

@npepinpe npepinpe commented Jun 2, 2020

Description

This PR fixes the flakiness in the testSwimProtocol test at the end. It was not a false positive, but really a flake, where sometimes the member would be removed from the cluster when its new version joined, but sometimes it would be removed due to missed probes (depending on timing), and so a REACHABILITY_CHANGED event would be sent. Fix was to extract testing that newer versions evict older versions of a member into a separate test, and not stopping the older member (since it isn't really necessary afaik - correct me if I'm wrong).

Related issues

closes #4633

Pull Request Checklist

  • All commit messages match our commit message guidelines
  • The submitting code follows our code style
  • If submitting code, please run mvn clean install -DskipTests locally before committing

@npepinpe npepinpe requested a review from Zelldon June 2, 2020 06:49
@npepinpe npepinpe self-assigned this Jun 2, 2020
@npepinpe npepinpe changed the title chore(atomix): refactor flaky test chore(atomix): extract flaky version updates from testSwimProtocol Jun 2, 2020
Copy link
Member

@Zelldon Zelldon left a comment

Choose a reason for hiding this comment

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

Thanks 👍 Only small thing because of the missing given, when, then blocks

@npepinpe
Copy link
Member Author

npepinpe commented Jun 2, 2020

Good point, I committed the suggestions 🙂

- extract test functionality into separate test, which tests that
  members joining with a version greater than the previously known ones
  override older members with a lower version
@npepinpe
Copy link
Member Author

npepinpe commented Jun 2, 2020

bors r+

zeebe-bors bot added a commit that referenced this pull request Jun 2, 2020
4647: chore(atomix): extract flaky version updates from testSwimProtocol r=npepinpe a=npepinpe

## Description

This PR fixes the flakiness in the `testSwimProtocol` test at the end. It was not a false positive, but really a flake, where sometimes the member would be removed from the cluster when its new version joined, but sometimes it would be removed due to missed probes (depending on timing), and so a REACHABILITY_CHANGED event would be sent. Fix was to extract testing that newer versions evict older versions of a member into a separate test, and not stopping the older member (since it isn't really necessary afaik - correct me if I'm wrong).

## Related issues

closes #4633 

#

Co-authored-by: Nicolas Pépin-Perreault <nicolas.pepin-perreault@camunda.com>
@zeebe-bors
Copy link
Contributor

zeebe-bors bot commented Jun 2, 2020

Build failed

@npepinpe
Copy link
Member Author

npepinpe commented Jun 2, 2020

bors retry

@zeebe-bors
Copy link
Contributor

zeebe-bors bot commented Jun 2, 2020

Build succeeded

@zeebe-bors zeebe-bors bot merged commit 379afe7 into develop Jun 2, 2020
@zeebe-bors zeebe-bors bot deleted the 4633-swim-version-updates branch June 2, 2020 10:03
github-merge-queue bot pushed a commit that referenced this pull request Mar 14, 2024
* feat(project): use OpenSearch 2 and Elasticsearch 8

* fix(chore): remove duplicate deps

* feat(backend): introduce ProcessStore for Process and ProcessInstances

Related with #4617

* feat(backend): add null check for permission service

Related with #4617

* feat(backend): return null instead of throw exception

* feat(backend): return empty Optional in case of error

* feat(backend): check for null permissions

* feat(backend): use store.NotFoundException

* feat(backend): use null allowed object for allAllowed

* feat(backend): store.NotFoundException is a OperateRuntimeException

* feat(backend): add deletion of documents in index to ProcessStore

* feat(backend): factor out allowed process ids

* feat(backend): remove SearchHit (ELS) from ImportBatch

Related with #4644

* feat(backend): clean up

Related with #4644

* feat(backend): refactor ImportPositionHolder to use ImportStore

Related with #4644

* feat(backend): add missing classes to load in test

Related with #4617
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.

SwimProtocolTest(java).testSwimProtocol flaky
2 participants