This is an automated email from the ASF dual-hosted git repository. morningman pushed a commit to branch branch-1.1-lts in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-1.1-lts by this push: new baeef82a98 [cherry-pick][fix](alter-load) fix bug that tablet version may be wrong when doing alter and load #13070 baeef82a98 is described below commit baeef82a980bbf9759caf2feaca4ad3bc601851f Author: morningman <morning...@163.com> AuthorDate: Fri Sep 30 23:45:28 2022 +0800 [cherry-pick][fix](alter-load) fix bug that tablet version may be wrong when doing alter and load #13070 --- fe/fe-core/src/main/java/org/apache/doris/load/LoadChecker.java | 3 +-- fe/fe-core/src/main/java/org/apache/doris/system/Diagnoser.java | 4 +++- .../java/org/apache/doris/transaction/DatabaseTransactionMgr.java | 3 +-- .../main/java/org/apache/doris/transaction/TransactionState.java | 6 ------ 4 files changed, 5 insertions(+), 11 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/load/LoadChecker.java b/fe/fe-core/src/main/java/org/apache/doris/load/LoadChecker.java index 0ee4fd2854..1976273a7b 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/load/LoadChecker.java +++ b/fe/fe-core/src/main/java/org/apache/doris/load/LoadChecker.java @@ -53,7 +53,6 @@ import org.apache.doris.transaction.TransactionStatus; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; - import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -293,7 +292,7 @@ public class LoadChecker extends MasterDaemon { // yiguolei: for real time load we use full finished replicas Set<Long> fullTablets = job.getFullTablets(); - if (state.isRunning()) { + if (!state.getTransactionStatus().isFinalStatus()) { job.setProgress(fullTablets.size() * 100 / jobTotalTablets.size()); } else { job.setProgress(100); diff --git a/fe/fe-core/src/main/java/org/apache/doris/system/Diagnoser.java b/fe/fe-core/src/main/java/org/apache/doris/system/Diagnoser.java index 24048ac251..ec839ab44d 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/system/Diagnoser.java +++ b/fe/fe-core/src/main/java/org/apache/doris/system/Diagnoser.java @@ -29,7 +29,6 @@ import org.apache.doris.catalog.TabletMeta; import org.apache.doris.common.Config; import com.google.common.collect.Lists; - import org.json.simple.JSONObject; import java.util.List; @@ -143,6 +142,9 @@ public class Diagnoser { versionErr.append("Replica on backend " + replica.getBackendId() + "'s version (" + replica.getVersion() + ") does not equal" + " to partition visible version (" + partition.getVisibleVersion() + ")"); + } else if (replica.getLastFailedVersion() != -1) { + versionErr.append("Replica on backend " + replica.getBackendId() + "'s last failed version is " + + replica.getLastFailedVersion()); } // status if (!replica.isAlive()) { diff --git a/fe/fe-core/src/main/java/org/apache/doris/transaction/DatabaseTransactionMgr.java b/fe/fe-core/src/main/java/org/apache/doris/transaction/DatabaseTransactionMgr.java index bf530c5ef4..24811d7de8 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/transaction/DatabaseTransactionMgr.java +++ b/fe/fe-core/src/main/java/org/apache/doris/transaction/DatabaseTransactionMgr.java @@ -59,7 +59,6 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; - import org.apache.commons.collections.CollectionUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -1563,7 +1562,7 @@ public class DatabaseTransactionMgr { try { for (Map.Entry<Long, TransactionState> entry : idToRunningTransactionState.entrySet()) { if (entry.getValue().getDbId() != dbId || !isIntersectionNotEmpty(entry.getValue().getTableIdList(), - tableIdList) || !entry.getValue().isRunning()) { + tableIdList) || entry.getValue().getTransactionStatus().isFinalStatus()) { continue; } if (entry.getKey() <= endTransactionId) { diff --git a/fe/fe-core/src/main/java/org/apache/doris/transaction/TransactionState.java b/fe/fe-core/src/main/java/org/apache/doris/transaction/TransactionState.java index 719db31b1e..bf921ce239 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/transaction/TransactionState.java +++ b/fe/fe-core/src/main/java/org/apache/doris/transaction/TransactionState.java @@ -33,7 +33,6 @@ import com.google.common.base.Strings; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; - import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -288,11 +287,6 @@ public class TransactionState implements Writable { this.errorReplicas = newErrorReplicas; } - public boolean isRunning() { - return transactionStatus == TransactionStatus.PREPARE - || transactionStatus == TransactionStatus.COMMITTED; - } - public void addPublishVersionTask(Long backendId, PublishVersionTask task) { this.publishVersionTasks.put(backendId, task); } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org