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]

Reply via email to