This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.0 by this push:
new cd5dfae1463 [improvement](statistics)Only write editlog for manual
analyze task, don't need to do so for auto tasks. #29685 (#29714)
cd5dfae1463 is described below
commit cd5dfae1463c1f4f009c0d309b7ad95a132324fa
Author: Jibing-Li <[email protected]>
AuthorDate: Tue Jan 9 16:41:55 2024 +0800
[improvement](statistics)Only write editlog for manual analyze task, don't
need to do so for auto tasks. #29685 (#29714)
Only write editlog for manual analyze task, don't need to do so for auto
tasks to reduce writing editlog.
Add error message to job info while task failed.
---
.../java/org/apache/doris/statistics/AnalysisManager.java | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisManager.java
b/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisManager.java
index 7c246b45875..8db50e667f6 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisManager.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisManager.java
@@ -483,7 +483,12 @@ public class AnalysisManager implements Writable {
if (taskState.equals(AnalysisState.FINISHED) ||
taskState.equals(AnalysisState.FAILED)) {
info.timeCostInMs = time - info.lastExecTimeInMs;
info.lastExecTimeInMs = time;
- logCreateAnalysisTask(info);
+ // Persist task info for manual job.
+ if (info.jobType.equals(JobType.MANUAL)) {
+ logCreateAnalysisTask(info);
+ } else {
+ replayCreateAnalysisTask(info);
+ }
}
info.lastExecTimeInMs = time;
AnalysisInfo job = analysisJobInfoMap.get(info.jobId);
@@ -494,6 +499,10 @@ public class AnalysisManager implements Writable {
// Synchronize the job state change in job level.
synchronized (job) {
job.lastExecTimeInMs = time;
+ if (taskState.equals(AnalysisState.FAILED)) {
+ String errMessage = String.format("%s:[%s] ", info.colName,
message);
+ job.message = job.message == null ? errMessage : job.message +
errMessage;
+ }
// Set the job state to RUNNING when its first task becomes
RUNNING.
if (info.state.equals(AnalysisState.RUNNING) &&
job.state.equals(AnalysisState.PENDING)) {
job.state = AnalysisState.RUNNING;
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]