github-actions[bot] commented on code in PR #68552:
URL: https://github.com/apache/doris/pull/68552#discussion_r4130482611
##########
cloud/src/recycler/recycler.cpp:
##########
@@ -8565,6 +8566,12 @@ int InstanceRecycler::classify_rowset_task_by_ref_count(
.tag("ref_count", ref_count - 1)
.tag("ref_count_key", hex(rowset_ref_count_key));
+ if (!task.versioned_rowset_key.empty()) {
+ versioned::document_remove<RowsetMetaCloudPB>(txn.get(),
task.versioned_rowset_key,
Review Comment:
[P1] Clear historical rowset versions before treating metadata removal as a
retry guard. A later compaction can write a new rowset under the same compact
key/end version (for example [5,6] followed by [1,6]). This removes only the
newest versionstamp, so if another rowset's batch delete fails, the retry sees
the older compact rowset and decrements its reference. Its pending compaction
operation log subsequently creates a recycle marker and releases that reference
again; with a shared rowset, that second release can delete files still used by
another instance. Coordinate tablet cleanup with historical versions and
operation-log ownership, and cover this history in the retry test.
--
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]