This is an automated email from the ASF dual-hosted git repository.

dataroaring pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-2.1 by this push:
     new c0cbb2362c4 [enhancement](schema-change) Record detailed fail reason 
for schema change tasks (#39351) (#39501)
c0cbb2362c4 is described below

commit c0cbb2362c455785d25a9402e306ab6fc1e2a70e
Author: Siyang Tang <[email protected]>
AuthorDate: Sun Aug 18 13:51:06 2024 +0800

    [enhancement](schema-change) Record detailed fail reason for schema change 
tasks (#39351) (#39501)
    
    ## Proposed changes
    
    Expose the error msg from BE as the real fail reason recorded for schema
    change tasks. To avoid too much memory usage, we just pick one among all
    to record.
---
 .../src/main/java/org/apache/doris/alter/SchemaChangeJobV2.java     | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeJobV2.java 
b/fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeJobV2.java
index 2bcb33adbcd..f11eab2d67c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeJobV2.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeJobV2.java
@@ -516,7 +516,7 @@ public class SchemaChangeJobV2 extends AlterJobV2 {
                 if (task.getFailedTimes() > 0) {
                     task.setFinished(true);
                     AgentTaskQueue.removeTask(task.getBackendId(), 
TTaskType.ALTER, task.getSignature());
-                    LOG.warn("schema change task failed: " + 
task.getErrorMsg());
+                    LOG.warn("schema change task failed: {}", 
task.getErrorMsg());
                     List<Long> failedBackends = 
failedTabletBackends.get(task.getTabletId());
                     if (failedBackends == null) {
                         failedBackends = Lists.newArrayList();
@@ -527,8 +527,8 @@ public class SchemaChangeJobV2 extends AlterJobV2 {
                             
.getReplicaAllocation(task.getPartitionId()).getTotalReplicaNum();
                     int failedTaskCount = failedBackends.size();
                     if (expectSucceedTaskNum - failedTaskCount < 
expectSucceedTaskNum / 2 + 1) {
-                        throw new AlterCancelException("schema change tasks 
failed on same tablet reach threshold "
-                                + failedTaskCount);
+                        throw new AlterCancelException(
+                                String.format("schema change tasks failed, 
error reason: %s", task.getErrorMsg()));
                     }
                 }
             }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to