This is an automated email from the ASF dual-hosted git repository.
morrysnow pushed a commit to branch branch-3.1
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-3.1 by this push:
new cb9ec3bab14 branch-3.1: [fix](warmup): fix passive cancellation of
event-driven jobs #54962 (#55088)
cb9ec3bab14 is described below
commit cb9ec3bab14f0d4f713ab0413c37f779b01e3f60
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Thu Aug 21 16:57:00 2025 +0800
branch-3.1: [fix](warmup): fix passive cancellation of event-driven jobs
#54962 (#55088)
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 7800cd95c93..8fd3fd9b4ab 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
@@ -2824,7 +2824,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]