This is an automated email from the ASF dual-hosted git repository.
dataroaring pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-3.0 by this push:
new 3182d260832 branch-3.0: [fix](warmup): fix passive cancellation of
event-driven jobs #54962 (#55087)
3182d260832 is described below
commit 3182d26083245a7724457c2765cce959e5a44aa2
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Sun Aug 24 15:40:54 2025 +0800
branch-3.0: [fix](warmup): fix passive cancellation of event-driven jobs
#54962 (#55087)
Cherry-picked from #54962
Co-authored-by: Kaijie Chen <[email protected]>
---
.../main/java/org/apache/doris/service/FrontendServiceImpl.java | 2 +-
.../cluster/test_warm_up_cluster_event_cancel_passive.groovy | 9 ++++++---
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
b/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
index 9169f560309..49ef6e5e635 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
@@ -2752,7 +2752,7 @@ public class FrontendServiceImpl implements
FrontendService.Iface {
CloudWarmUpJob job = ((CloudEnv) Env.getCurrentEnv())
.getCacheHotspotMgr()
.getCloudWarmUpJob(request.getWarmUpJobId());
- if (job == null) {
+ if (job == null || job.isDone()) {
LOG.info("warmup job {} is not running, notify caller BE {} to
cancel job",
job.getJobId(), clientAddr);
// notify client to cancel this job
diff --git
a/regression-test/suites/cloud_p0/cache/multi_cluster/warm_up/cluster/test_warm_up_cluster_event_cancel_passive.groovy
b/regression-test/suites/cloud_p0/cache/multi_cluster/warm_up/cluster/test_warm_up_cluster_event_cancel_passive.groovy
index 5c1cdb8ce05..e4def0b7d30 100644
---
a/regression-test/suites/cloud_p0/cache/multi_cluster/warm_up/cluster/test_warm_up_cluster_event_cancel_passive.groovy
+++
b/regression-test/suites/cloud_p0/cache/multi_cluster/warm_up/cluster/test_warm_up_cluster_event_cancel_passive.groovy
@@ -18,12 +18,14 @@
import org.apache.doris.regression.suite.ClusterOptions
import groovy.json.JsonSlurper
-suite('test_warm_up_cluster_event_cancel', 'docker') {
+suite('test_warm_up_cluster_event_cancel_passive', 'docker') {
def options = new ClusterOptions()
options.feConfigs += [
+ 'enable_debug_points=true',
'cloud_cluster_check_interval_second=1',
]
options.beConfigs += [
+ 'enable_debug_points=true',
'file_cache_enter_disk_resource_limit_mode_percent=99',
'enable_evict_file_cache_in_advance=false',
'file_cache_background_monitor_interval_ms=1000',
@@ -43,9 +45,10 @@ suite('test_warm_up_cluster_event_cancel', 'docker') {
// Read response
def responseText = conn.inputStream.text
+ logger.info("Response from ${urlStr}: ${responseText}")
def json = new JsonSlurper().parseText(responseText)
- return json?.msg == "OK" && json?.code == 0
+ return json?.msg == "OK"
}
def setDebugPointsForCluster = { cluster, debug_point, enable ->
@@ -226,7 +229,7 @@ suite('test_warm_up_cluster_event_cancel', 'docker') {
}
sleep(15000)
def cacheSize1 = getClusterTTLCacheSizeSum(clusterName2);
- assertTrue(cacheSize1 > cacheSize0, "some more syncs before cache
expire is expected")
+ assertTrue(cacheSize1 >= cacheSize0, "some more syncs before cache
expire is expected")
// At this point, cache should be expired, so we expect no more syncs
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]