Skip to content

Commit 908b121

Browse files
authored
fix detail task may failed by log file expired (#4475)
1 parent 0785222 commit 908b121

1 file changed

Lines changed: 15 additions & 1 deletion

File tree

server/odc-service/src/main/java/com/oceanbase/odc/service/flow/FlowTaskInstanceService.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
import java.util.function.Predicate;
3535
import java.util.stream.Collectors;
3636

37+
import javax.annotation.Nullable;
3738
import javax.validation.constraints.NotNull;
3839

3940
import org.apache.commons.collections4.CollectionUtils;
@@ -783,7 +784,10 @@ private void setDownloadUrlsIfNecessary(Long taskId, List<? extends FlowTaskResu
783784
return;
784785
}
785786
for (FlowTaskResult result : results) {
786-
TaskDownloadUrls urls = databaseChangeOssUrlCache.get(taskId);
787+
TaskDownloadUrls urls = getTaskDownloadUrls(taskId);
788+
if (urls == null) {
789+
return;
790+
}
787791
if (result instanceof AbstractFlowTaskResult) {
788792
((AbstractFlowTaskResult) result)
789793
.setFullLogDownloadUrl(urls.getLogDownloadUrl());
@@ -798,4 +802,14 @@ private void setDownloadUrlsIfNecessary(Long taskId, List<? extends FlowTaskResu
798802
}
799803
}
800804

805+
@Nullable
806+
private TaskDownloadUrls getTaskDownloadUrls(Long taskId) {
807+
try {
808+
return databaseChangeOssUrlCache.get(taskId);
809+
} catch (NotFoundException e) {
810+
log.warn("Failed to retrieve task download urls from cloud object storage, taskId={}", taskId, e);
811+
return null;
812+
}
813+
}
814+
801815
}

0 commit comments

Comments
 (0)