github-actions[bot] commented on code in PR #65373:
URL: https://github.com/apache/doris/pull/65373#discussion_r3556944677
##########
be/src/cloud/cloud_storage_engine.cpp:
##########
@@ -773,6 +773,7 @@ Status
CloudStorageEngine::_request_tablet_global_compaction_lock(
LOG_WARNING("failed to request cumu compactoin global lock")
.tag("tablet id", tablet->tablet_id())
.tag("msg", st.to_string());
+ tablet->set_last_cumu_compaction_status(st.to_string());
Review Comment:
This status refresh fixes the global-lock failure path, but the helper now
depends on every fresh failure timestamp having a matching fresh status. There
is still another cloud cumulative writer below that only updates
`last_cumu_compaction_failure_time`: when `_should_delay_large_task()` fires in
`_submit_cumulative_compaction_task()`, line 1078 records the failure time,
erases the executing task, and returns before `execute_compact()` can refresh
`last cumulative status`. If the tablet previously had a real no-op cumulative
`E-2000` status, the updated Groovy helper sees the new failure time plus that
stale no-op status and sets `compactionFailureNonFatal`, so the manual
compaction helper can finish even though this request was just delayed and no
compaction ran. Please refresh `last_cumu_compaction_status` on that delay path
as well, or make the helper require a per-attempt status/failure signal before
suppressing cumulative no-op failures.
--
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]