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

fix listener can't receive snapshot anymore #4245

Merged
merged 1 commit into from
May 11, 2022

Conversation

critical27
Copy link
Contributor

What type of PR is this?

  • bug
  • feature
  • enhancement

What problem(s) does this PR solve?

Issue(s) number:

Description:

During replication test, I found two problems here:

  1. Once listener return FAILED when receiving snapshot, the sender won't retry (we only retry for timeout before). This is a minor issue, because usually, listener won't explicitly return error when receiving snapshot (at least listener should not @panda-sheep you need to check your SyncListener implementation)
  2. What's worse, listener won't be able to receive snapshot. Because the listener is always in WAITING_SNAPSHOT state. So we just reuse the same logic in normal RaftPart.

How do you solve it?

Special notes for your reviewer, ex. impact of this fix, design document, etc:

Checklist:

Tests:

  • Unit test(positive and negative cases)
  • Function test
  • Performance test
  • N/A

Affects:

  • Documentation affected (Please add the label if documentation needs to be modified.)
  • Incompatibility (If it breaks the compatibility, please describe it and add the label.)
  • If it's needed to cherry-pick (If cherry-pick to some branches is required, please label the destination version(s).)
  • Performance impacted: Consumes more CPU/Memory

Release notes:

Please confirm whether to be reflected in release notes and how to describe:
Not related

@critical27 critical27 added the ready-for-testing PR: ready for the CI test label May 10, 2022
@critical27
Copy link
Contributor Author

critical27 commented May 10, 2022

@Sophie-Xie perhaps you need to cherry-pick it to the enterprise version later.

liwenhui-soul
liwenhui-soul previously approved these changes May 10, 2022
@liwenhui-soul
Copy link
Contributor

LGTM

panda-sheep
panda-sheep previously approved these changes May 10, 2022
Copy link
Contributor

@panda-sheep panda-sheep left a comment

Choose a reason for hiding this comment

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

Good

@Shinji-IkariG Shinji-IkariG merged commit 32207a3 into vesoft-inc:master May 11, 2022
@critical27 critical27 deleted the fix branch May 12, 2022 02:02
@Sophie-Xie Sophie-Xie added the affects/v3.1 PR/issue: this bug affects v3.1.x version. label Jun 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
affects/v3.1 PR/issue: this bug affects v3.1.x version. ready-for-testing PR: ready for the CI test
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants