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]
