github-actions[bot] commented on code in PR #66919:
URL: https://github.com/apache/doris/pull/66919#discussion_r3849110050
##########
cloud/src/recycler/recycler.cpp:
##########
@@ -4807,6 +4815,14 @@ int InstanceRecycler::recycle_tablet(int64_t tablet_id,
RecyclerMetricsContext&
.tag("rowset_id", rs_meta.rowset_id_v2());
return -1;
}
Review Comment:
[P1] Decrement every packed DBM before deleting the tablet range
These loops cover current and restore-job rowsets only, but the bulk removal
below also destroys DBMs whose only rowset owner is elsewhere. A compacted
rowset can exist only in `RecycleRowsetPB`, and a load writes `meta_rowset_tmp`
before saving its packed DBM; tmp keys are transaction-first and may remain for
72 hours after an index becomes recyclable. If tablet recycling wins, it
removes those owners/DBM locations without decrementing their packed slices. A
slice already marked `corrected` is never rechecked, so its `data/packed_file`
object and KV stay live indefinitely. Please enumerate the tablet's DBM range
itself (or otherwise prove every owner namespace is drained) before removing
it, and test packed DBMs owned by recycled and uncommitted tmp rowsets.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]