-
Notifications
You must be signed in to change notification settings - Fork 409
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
tiflash can't gc completely after set tiflash replica 0 #5975
Comments
Since we use a lot of logical split now, the estimated rows and size (which is based on pack statistics) is no longer accurate. The inaccurate rows and size misleads the GC and prevented DTFiles being recycled. We also need to continuously observe whether there are other problems when the estimated rows and size is very inaccurate. There are two possible solution directions: A. Make estimated rows and size more accurate. |
An example is that a segment with range [27192,30593), while the DMFile in stable contains two packs. The first pack contains rows [16994, 23791) ∪ [33991, 35386) and the second pack contains rows [35386, 37381). No data is valid under the segment, which is generated by logical split, but now we can not execute gc on segment like this. Now the gc routines use the min-max index for decision-making tiflash/dbms/src/Storages/DeltaMerge/DeltaMergeStore_InternalBg.cpp Lines 391 to 400 in 6a305d3
tiflash/dbms/src/Storages/DeltaMerge/StableValueSpace.cpp Lines 400 to 434 in 6a305d3
|
Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)
2. What did you expect to see? (Required)
3. What did you see instead (Required)
4. What is your TiFlash version? (Required)
master
The text was updated successfully, but these errors were encountered: