You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by lu...@apache.org on 2023/06/01 14:24:25 UTC
[doris] branch master updated: [enhancement](publish) print detailed info for failed publish (#20309)
This is an automated email from the ASF dual-hosted git repository.
luzhijing pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 363e78f08f [enhancement](publish) print detailed info for failed publish (#20309)
363e78f08f is described below
commit 363e78f08fd80e5c12958b8a074928fa5e9c1b2d
Author: Yongqiang YANG <98...@users.noreply.github.com>
AuthorDate: Thu Jun 1 22:24:16 2023 +0800
[enhancement](publish) print detailed info for failed publish (#20309)
---
.../apache/doris/transaction/DatabaseTransactionMgr.java | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
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 4c50ae9127..5d6b94bfbb 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
@@ -928,9 +928,19 @@ public class DatabaseTransactionMgr {
for (Tablet tablet : index.getTablets()) {
int healthReplicaNum = 0;
for (Replica replica : tablet.getReplicas()) {
- if (!errorReplicaIds.contains(replica.getId()) && replica.getLastFailedVersion() < 0) {
+ if (replica.getLastFailedVersion() >= 0) {
+ LOG.info("publish version failed for transaction {} on tablet {},"
+ + " on replica {} due to lastFailedVersion >= 0",
+ transactionState, tablet, replica);
+ continue;
+ }
+ if (!errorReplicaIds.contains(replica.getId())) {
if (replica.checkVersionCatchUp(partition.getVisibleVersion(), true)) {
++healthReplicaNum;
+ } else {
+ LOG.info("publish version failed for transaction {} on tablet {},"
+ + " on replica {} due to not catchup",
+ transactionState, tablet, replica);
}
} else if (replica.getVersion() >= partitionCommitInfo.getVersion()) {
// the replica's version is larger than or equal to current transaction
@@ -938,6 +948,9 @@ public class DatabaseTransactionMgr {
// TODO(cmy): actually I have no idea why we need this check
errorReplicaIds.remove(replica.getId());
++healthReplicaNum;
+ } else {
+ LOG.info("publish version failed for transaction {} on tablet {},"
+ + " on replica {} due to version hole", transactionState, tablet, replica);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org