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](cooldown) Fix potential data loss when clone task's dst tablet is cooldown replica #17644

Merged

Conversation

platoneko
Copy link
Contributor

@platoneko platoneko commented Mar 10, 2023

Proposed changes

Issue Number: close #xxx

Problem summary

If this replica is cooldown replica, MUST generate a new cooldown_meta_id to avoid use cooldown_meta_id generated in old cooldown term which may lead to such situation:
Replica A is cooldown replica, cooldown_meta_id=2,
Replica B: cooldown_replica=A, cooldown_meta_id=1
Replica A: full clone Replica B, cooldown_meta_id=1, but remote cooldown_meta is still with cooldown_meta_id=2
After tablet report. FE finds all replicas' cooldowned data is consistent(cooldown_meta_id=1)
Replica A: confirm_unused_remote_files, delete some cooldowned data of cooldown_meta_id=2
Replica B: follow_cooldown_data, cooldown_meta_id=2, data lost

Checklist(Required)

  • Does it affect the original behavior
  • Has unit tests been added
  • Has document been added or modified
  • Does it need to update dependencies
  • Is this PR support rollback (If NO, please explain WHY)

Further comments

If this is a relatively large or complex change, kick off the discussion at dev@doris.apache.org by explaining why you chose the solution you did and what alternatives you considered, etc...

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@platoneko
Copy link
Contributor Author

run beut

@platoneko
Copy link
Contributor Author

run feut

@platoneko
Copy link
Contributor Author

run p0

@platoneko
Copy link
Contributor Author

run clickbench

@dataroaring
Copy link
Contributor

run buildall

@platoneko platoneko force-pushed the cooldown_replica_as_clone_dst_tablet branch from 952b095 to 5305f10 Compare March 19, 2023 03:35
@platoneko
Copy link
Contributor Author

run buildall

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@hello-stephen
Copy link
Contributor

hello-stephen commented Mar 19, 2023

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 34.18 seconds
stream load tsv: 478 seconds loaded 74807831229 Bytes, about 149 MB/s
stream load json: 26 seconds loaded 2358488459 Bytes, about 86 MB/s
stream load orc: 76 seconds loaded 1101869774 Bytes, about 13 MB/s
stream load parquet: 32 seconds loaded 861443392 Bytes, about 25 MB/s
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20230319054840_clickbench_pr_116669.html

@dataroaring dataroaring added the dev/2.0.0 2.0.0 release label Jul 25, 2023
@xiaokang xiaokang added dev/2.0.1 and removed dev/2.0.0 2.0.0 release labels Jul 26, 2023
@xiaokang xiaokang added the p0_l label Aug 18, 2023
dataroaring
dataroaring previously approved these changes Aug 18, 2023
Copy link
Contributor

@dataroaring dataroaring left a comment

Choose a reason for hiding this comment

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

LGTM

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@xiaokang
Copy link
Contributor

run buildall

dataroaring
dataroaring previously approved these changes Aug 27, 2023
Copy link
Contributor

@dataroaring dataroaring left a comment

Choose a reason for hiding this comment

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

LGTM

@dataroaring
Copy link
Contributor

run buildall

xiaokang
xiaokang previously approved these changes Aug 27, 2023
Copy link
Contributor

@xiaokang xiaokang left a comment

Choose a reason for hiding this comment

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

LGTM

@github-actions github-actions bot added the approved Indicates a PR has been approved by one committer. label Aug 27, 2023
@github-actions
Copy link
Contributor

PR approved by at least one committer and no changes requested.

@github-actions
Copy link
Contributor

PR approved by anyone and no changes requested.

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@xiaokang
Copy link
Contributor

run buildall

@platoneko
Copy link
Contributor Author

run buildall

1 similar comment
@platoneko
Copy link
Contributor Author

run buildall

@github-actions
Copy link
Contributor

github-actions bot commented Sep 1, 2023

clang-tidy review says "All clean, LGTM! 👍"

@platoneko platoneko dismissed stale reviews from dataroaring and xiaokang via 6a455f7 September 1, 2023 05:29
@platoneko platoneko force-pushed the cooldown_replica_as_clone_dst_tablet branch from 1477542 to 6a455f7 Compare September 1, 2023 05:29
@platoneko
Copy link
Contributor Author

run buildall

@github-actions github-actions bot removed the approved Indicates a PR has been approved by one committer. label Sep 1, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Sep 1, 2023

clang-tidy review says "All clean, LGTM! 👍"

@hello-stephen
Copy link
Contributor

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 47.98 seconds
stream load tsv: 552 seconds loaded 74807831229 Bytes, about 129 MB/s
stream load json: 20 seconds loaded 2358488459 Bytes, about 112 MB/s
stream load orc: 64 seconds loaded 1101869774 Bytes, about 16 MB/s
stream load parquet: 31 seconds loaded 861443392 Bytes, about 26 MB/s
insert into select: 28.9 seconds inserted 10000000 Rows, about 346K ops/s
storage size: 17162195977 Bytes

Copy link
Contributor

@dataroaring dataroaring left a comment

Choose a reason for hiding this comment

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

LGTM

@github-actions github-actions bot added the approved Indicates a PR has been approved by one committer. label Sep 1, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Sep 1, 2023

PR approved by at least one committer and no changes requested.

@dataroaring dataroaring merged commit 9d2fc78 into apache:master Sep 1, 2023
25 of 27 checks passed
xiaokang added a commit that referenced this pull request Sep 1, 2023
…is cooldown replica (#17644)



Co-authored-by: Yongqiang YANG <98214048+dataroaring@users.noreply.github.com>
Co-authored-by: Kang <kxiao.tiger@gmail.com>
@xiaokang xiaokang mentioned this pull request Sep 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by one committer. dev/2.0.2-merged p0_l reviewed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants