github-actions[bot] commented on code in PR #66150:
URL: https://github.com/apache/doris/pull/66150#discussion_r3668573716


##########
cloud/src/common/config.h:
##########
@@ -314,8 +314,8 @@ CONF_mBool(enable_load_txn_status_check, "true");
 CONF_mBool(enable_tablet_job_check, "true");
 
 CONF_mBool(enable_recycle_delete_rowset_key_check, "true");
-CONF_mBool(enable_mark_delete_rowset_before_recycle, "true");
-CONF_mBool(enable_abort_txn_and_job_for_delete_rowset_before_recycle, "true");
+CONF_mBool(enable_mark_delete_rowset_before_recycle, "false");

Review Comment:
   [P1] Preserve the rowset ownership fence before changing these defaults
   
   These defaults remove the ownership fence from both non-versioned rowset 
paths. For a `PREPARE` entry, the recycler can queue file deletion while the 
key is still present, so a concurrent `commit_rowset()` can consume the 
unmarked key and commit tmp metadata for those soon-deleted files. For an 
eventual transaction already persisted as `COMMITTED`, `recycle_tmp_rowsets()` 
can likewise delete/remove its unmarked tmp rows; `TxnLazyCommitTask` then 
accepts the empty rescan and still changes the transaction to `VISIBLE`. This 
can make a transaction visible without its rowset data. The new test guards all 
force the old true/true path, so none covers this false/false interleaving. 
Please keep both fences enabled, or provide an equivalent atomic fence plus 
deterministic race coverage before flipping the defaults.



-- 
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