-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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](restore) Reset next version for remote table when restore #40118
[fix](restore) Reset next version for remote table when restore #40118
Conversation
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
@w41ter please help to review, thank you. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
PR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
run buildall |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
TPC-H: Total hot run time: 38251 ms
|
TPC-DS: Total hot run time: 187956 ms
|
ClickBench: Total hot run time: 33.16 s
|
…he#40118) We should reset next version to visible version + 1 for all partitions of remote table, when restoring table that do not exist locally. 在高并发insert场景,CCR源端表的next version可能比visible version大比较多,目标集群restore全量快照后,切换到增量binlog后,commit事务时使用的version(来自next version)就可能比当前visible version大比较多。 此时,对于MoW表,就会出现publish version不连续,增量binlog一直无法publish的问题。事务状态会一直是`COMMITTED`,并伴随类似ErrMsg `wait for publishing partition 15027 version 1037597. self version: 1037627. table 15025`。
…he#40118) We should reset next version to visible version + 1 for all partitions of remote table, when restoring table that do not exist locally. 在高并发insert场景,CCR源端表的next version可能比visible version大比较多,目标集群restore全量快照后,切换到增量binlog后,commit事务时使用的version(来自next version)就可能比当前visible version大比较多。 此时,对于MoW表,就会出现publish version不连续,增量binlog一直无法publish的问题。事务状态会一直是`COMMITTED`,并伴随类似ErrMsg `wait for publishing partition 15027 version 1037597. self version: 1037627. table 15025`。
#40165) cherry pick from #40118 Co-authored-by: smallx <[email protected]>
#40166) cherry pick from #40118 Co-authored-by: smallx <[email protected]>
We should reset next version to visible version + 1 for all partitions of remote table, when restoring table that do not exist locally. 在高并发insert场景,CCR源端表的next version可能比visible version大比较多,目标集群restore全量快照后,切换到增量binlog后,commit事务时使用的version(来自next version)就可能比当前visible version大比较多。 此时,对于MoW表,就会出现publish version不连续,增量binlog一直无法publish的问题。事务状态会一直是`COMMITTED`,并伴随类似ErrMsg `wait for publishing partition 15027 version 1037597. self version: 1037627. table 15025`。
We should reset next version to visible version + 1 for all partitions of remote table, when restoring table that do not exist locally.
在高并发insert场景,CCR源端表的next version可能比visible version大比较多,目标集群restore全量快照后,切换到增量binlog后,commit事务时使用的version(来自next version)就可能比当前visible version大比较多。
此时,对于MoW表,就会出现publish version不连续,增量binlog一直无法publish的问题。事务状态会一直是
COMMITTED
,并伴随类似ErrMsgwait for publishing partition 15027 version 1037597. self version: 1037627. table 15025
。