This is an automated email from the ASF dual-hosted git repository.
caiconghui 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 44dadd10fc4 [enhancement](transatcion) show more details about
transaction num when execute show proc "/dbs" stmt (#30980)
44dadd10fc4 is described below
commit 44dadd10fc4319540cfbb409dc7f51fb18dc68a0
Author: caiconghui <[email protected]>
AuthorDate: Wed Feb 21 15:44:15 2024 +0800
[enhancement](transatcion) show more details about transaction num when
execute show proc "/dbs" stmt (#30980)
Co-authored-by: caiconghui1 <[email protected]>
---
.../org/apache/doris/analysis/ShowDataStmt.java | 15 +-----
.../transaction/CloudGlobalTransactionMgr.java | 6 +++
.../org/apache/doris/common/proc/DbsProcDir.java | 5 +-
.../apache/doris/common/proc/TablesProcDir.java | 18 ++++++-
.../doris/transaction/DatabaseTransactionMgr.java | 59 +++++++++-------------
.../doris/transaction/GlobalTransactionMgr.java | 11 +++-
.../transaction/GlobalTransactionMgrIface.java | 3 ++
.../apache/doris/analysis/ShowDataStmtTest.java | 4 +-
.../apache/doris/common/proc/DbsProcDirTest.java | 27 ++++++++--
.../transaction/DatabaseTransactionMgrTest.java | 8 +--
.../suites/database_p0/test_alter_db.groovy | 2 +-
11 files changed, 92 insertions(+), 66 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowDataStmt.java
b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowDataStmt.java
index f84784e5826..6be5ab00ea2 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowDataStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowDataStmt.java
@@ -84,10 +84,6 @@ public class ShowDataStmt extends ShowStmt {
.addColumn(new Column("RemoteSize",
ScalarType.createVarchar(30)))
.build();
- public static final ImmutableList<String>
SHOW_DATABASE_DATA_META_DATA_ORIGIN =
- new
ImmutableList.Builder<String>().add("DbId").add("DbName").add("Size")
-
.add("RemoteSize").add("RecycleSize").add("RecycleRemoteSize").build();
-
public static final ImmutableList<String> SHOW_TABLE_DATA_META_DATA_ORIGIN
=
new
ImmutableList.Builder<String>().add("TableName").add("Size").add("ReplicaCount")
.add("RemoteSize").build();
@@ -246,12 +242,6 @@ public class ShowDataStmt extends ShowStmt {
+ leftPair.second;
List<String> leftRow = Arrays.asList("Left", readableLeft,
String.valueOf(replicaCountLeft), "");
totalRows.add(leftRow);
-
- // txn quota
- long txnQuota = db.getTransactionQuotaSize();
- List<String> transactionQuotaList = Arrays.asList("Transaction
Quota",
- String.valueOf(txnQuota), String.valueOf(txnQuota),
"");
- totalRows.add(transactionQuotaList);
} finally {
db.readUnlock();
}
@@ -409,11 +399,10 @@ public class ShowDataStmt extends ShowStmt {
public String toSql() {
StringBuilder builder = new StringBuilder();
builder.append("SHOW DATA");
- builder.append(" FROM ");
+
if (tableName != null) {
+ builder.append(" FROM ");
builder.append(tableName.toSql());
- } else {
- builder.append("`").append(dbName).append("`");
}
// Order By clause
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/cloud/transaction/CloudGlobalTransactionMgr.java
b/fe/fe-core/src/main/java/org/apache/doris/cloud/transaction/CloudGlobalTransactionMgr.java
index b4dc319c842..258d1b54050 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/cloud/transaction/CloudGlobalTransactionMgr.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/cloud/transaction/CloudGlobalTransactionMgr.java
@@ -83,6 +83,7 @@ import java.io.DataOutput;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
import java.util.concurrent.TimeoutException;
public class CloudGlobalTransactionMgr implements GlobalTransactionMgrIface {
@@ -796,6 +797,11 @@ public class CloudGlobalTransactionMgr implements
GlobalTransactionMgrIface {
throw new AnalysisException(NOT_SUPPORTED_MSG);
}
+ @Override
+ public Map<Long, List<Long>> getDbRunningTransInfo(long dbId) throws
AnalysisException {
+ throw new AnalysisException(NOT_SUPPORTED_MSG);
+ }
+
@Override
public List<List<String>> getDbTransInfoByStatus(Long dbId,
TransactionStatus status) throws AnalysisException {
throw new AnalysisException(NOT_SUPPORTED_MSG);
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/common/proc/DbsProcDir.java
b/fe/fe-core/src/main/java/org/apache/doris/common/proc/DbsProcDir.java
index a3818099d8e..2fcd2f49b48 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/common/proc/DbsProcDir.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/common/proc/DbsProcDir.java
@@ -43,7 +43,7 @@ public class DbsProcDir implements ProcDirInterface {
public static final ImmutableList<String> TITLE_NAMES = new
ImmutableList.Builder<String>()
.add("DbId").add("DbName").add("TableNum").add("Size").add("Quota")
.add("LastConsistencyCheckTime").add("ReplicaCount").add("ReplicaQuota")
- .add("TransactionQuota").add("LastUpdateTime")
+
.add("RunningTransactionNum").add("TransactionQuota").add("LastUpdateTime")
.build();
private Env env;
@@ -115,12 +115,15 @@ public class DbsProcDir implements ProcDirInterface {
((Database) db).getLastCheckTime()) :
FeConstants.null_string;
long replicaCount = (db instanceof Database) ? ((Database)
db).getReplicaCountWithLock() : 0;
long replicaQuota = (db instanceof Database) ? ((Database)
db).getReplicaQuota() : 0;
+ long transactionNum = (db instanceof Database) ?
env.getGlobalTransactionMgr()
+ .getRunningTxnNums(db.getId()) : 0;
long transactionQuota = (db instanceof Database) ? ((Database)
db).getTransactionQuotaSize() : 0;
dbInfo.add(readableUsedQuota);
dbInfo.add(readableQuota);
dbInfo.add(lastCheckTime);
dbInfo.add(replicaCount);
dbInfo.add(replicaQuota);
+ dbInfo.add(transactionNum);
dbInfo.add(transactionQuota);
dbInfo.add(TimeUtils.longToTimeString(db.getLastUpdateTime()));
} finally {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/common/proc/TablesProcDir.java
b/fe/fe-core/src/main/java/org/apache/doris/common/proc/TablesProcDir.java
index c2926c829ad..f4e39080abe 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/common/proc/TablesProcDir.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/common/proc/TablesProcDir.java
@@ -19,6 +19,7 @@ package org.apache.doris.common.proc;
import org.apache.doris.catalog.Column;
import org.apache.doris.catalog.DatabaseIf;
+import org.apache.doris.catalog.Env;
import org.apache.doris.catalog.OlapTable;
import org.apache.doris.catalog.PartitionType;
import org.apache.doris.catalog.RangePartitionInfo;
@@ -31,10 +32,13 @@ import org.apache.doris.common.util.TimeUtils;
import com.google.common.base.Preconditions;
import com.google.common.base.Strings;
import com.google.common.collect.ImmutableList;
+import com.google.common.collect.Maps;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
/*
* SHOW PROC /dbs/dbId/
@@ -44,7 +48,7 @@ public class TablesProcDir implements ProcDirInterface {
public static final ImmutableList<String> TITLE_NAMES = new
ImmutableList.Builder<String>()
.add("TableId").add("TableName").add("IndexNum").add("PartitionColumnName")
.add("PartitionNum").add("State").add("Type").add("LastConsistencyCheckTime").add("ReplicaCount")
-
.add("VisibleVersion").add("VisibleVersionTime").add("LastUpdateTime")
+
.add("VisibleVersion").add("VisibleVersionTime").add("RunningTransactionNum").add("LastUpdateTime")
.build();
private DatabaseIf db;
@@ -83,6 +87,16 @@ public class TablesProcDir implements ProcDirInterface {
// get info
List<List<Comparable>> tableInfos = new ArrayList<List<Comparable>>();
List<TableIf> tableList = db.getTables();
+ Map<Long, List<Long>> transToTableListInfo =
Env.getCurrentGlobalTransactionMgr()
+ .getDbRunningTransInfo(db.getId());
+ Map<Long, Integer> tableToTransNumInfo = Maps.newHashMap();
+ for (Entry<Long, List<Long>> transWithTableList :
transToTableListInfo.entrySet()) {
+ for (Long tableId : transWithTableList.getValue()) {
+ int transNum = tableToTransNumInfo.getOrDefault(tableId, 0);
+ transNum++;
+ tableToTransNumInfo.put(tableId, transNum);
+ }
+ }
for (TableIf table : tableList) {
List<Comparable> tableInfo = new ArrayList<Comparable>();
int partitionNum = 1;
@@ -132,6 +146,8 @@ public class TablesProcDir implements ProcDirInterface {
tableInfo.add(FeConstants.null_string);
tableInfo.add(FeConstants.null_string);
}
+ int runningTransactionNum =
tableToTransNumInfo.getOrDefault(table.getId(), 0);
+ tableInfo.add(runningTransactionNum);
tableInfo.add(TimeUtils.longToTimeString(table.getUpdateTime()));
tableInfos.add(tableInfo);
} finally {
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 0967d4e7761..0e5608791e7 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
@@ -83,6 +83,7 @@ import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.Map.Entry;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.locks.ReentrantReadWriteLock;
@@ -147,12 +148,9 @@ public class DatabaseTransactionMgr {
// it must exists in dbIdToTxnLabels, and vice versa
private final Map<String, Set<Long>> labelToTxnIds = Maps.newHashMap();
- // count the number of running txns of database, except for the routine
load txn
+ // count the number of running txns of database
private volatile int runningTxnNums = 0;
- // count only the number of running routine load txns of database
- private volatile int runningRoutineLoadTxnNums = 0;
-
private final Env env;
private final EditLog editLog;
@@ -238,10 +236,6 @@ public class DatabaseTransactionMgr {
return runningTxnNums;
}
- protected int getRunningRoutineLoadTxnNums() {
- return runningRoutineLoadTxnNums;
- }
-
@VisibleForTesting
protected int getFinishedTxnNums() {
return idToFinalStatusTransactionState.size();
@@ -272,6 +266,19 @@ public class DatabaseTransactionMgr {
return infos;
}
+ public Map<Long, List<Long>> getDbRunningTransInfo() {
+ Map<Long, List<Long>> infos = Maps.newHashMap();
+ readLock();
+ try {
+ for (Entry<Long, TransactionState> info :
idToRunningTransactionState.entrySet()) {
+ infos.put(info.getKey(), info.getValue().getTableIdList());
+ }
+ } finally {
+ readUnlock();
+ }
+ return infos;
+ }
+
public List<List<String>> getTxnStateInfoList(TransactionStatus status) {
List<List<String>> infos = Lists.newArrayList();
Collection<TransactionState> transactionStateCollection = null;
@@ -386,7 +393,7 @@ public class DatabaseTransactionMgr {
}
}
- checkRunningTxnExceedLimit(sourceType);
+ checkRunningTxnExceedLimit();
tid = idGenerator.getNextTransactionId();
TransactionState transactionState = new TransactionState(dbId,
tableIdList,
@@ -1446,19 +1453,11 @@ public class DatabaseTransactionMgr {
}
if (!transactionState.getTransactionStatus().isFinalStatus()) {
if
(idToRunningTransactionState.put(transactionState.getTransactionId(),
transactionState) == null) {
- if (transactionState.getSourceType() ==
TransactionState.LoadJobSourceType.ROUTINE_LOAD_TASK) {
- runningRoutineLoadTxnNums++;
- } else {
- runningTxnNums++;
- }
+ runningTxnNums++;
}
} else {
if
(idToRunningTransactionState.remove(transactionState.getTransactionId()) !=
null) {
- if (transactionState.getSourceType() ==
TransactionState.LoadJobSourceType.ROUTINE_LOAD_TASK) {
- runningRoutineLoadTxnNums--;
- } else {
- runningTxnNums--;
- }
+ runningTxnNums--;
}
idToFinalStatusTransactionState.put(transactionState.getTransactionId(),
transactionState);
if (transactionState.isShortTxn()) {
@@ -1842,22 +1841,12 @@ public class DatabaseTransactionMgr {
return infos;
}
- protected void
checkRunningTxnExceedLimit(TransactionState.LoadJobSourceType sourceType)
+ protected void checkRunningTxnExceedLimit()
throws BeginTransactionException, MetaNotFoundException {
- switch (sourceType) {
- case ROUTINE_LOAD_TASK:
- // no need to check limit for routine load task:
- // 1. the number of running routine load tasks is limited by
Config.max_routine_load_task_num_per_be
- // 2. if we add routine load txn to runningTxnNums,
runningTxnNums will always be occupied by routine
- // load, and other txn may not be able to submitted.
- break;
- default:
- long txnQuota =
env.getInternalCatalog().getDbOrMetaException(dbId).getTransactionQuotaSize();
- if (runningTxnNums >= txnQuota) {
- throw new BeginTransactionException("current running txns
on db " + dbId + " is "
- + runningTxnNums + ", larger than limit " +
txnQuota);
- }
- break;
+ long txnQuota =
env.getInternalCatalog().getDbOrMetaException(dbId).getTransactionQuotaSize();
+ if (runningTxnNums >= txnQuota) {
+ throw new BeginTransactionException("current running txns on db "
+ dbId + " is "
+ + runningTxnNums + ", larger than limit " + txnQuota);
}
}
@@ -2152,7 +2141,7 @@ public class DatabaseTransactionMgr {
readLock();
try {
infos.add(Lists.newArrayList("running", String.valueOf(
- runningTxnNums + runningRoutineLoadTxnNums)));
+ runningTxnNums)));
long finishedNum = getFinishedTxnNums();
infos.add(Lists.newArrayList("finished",
String.valueOf(finishedNum)));
} finally {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/transaction/GlobalTransactionMgr.java
b/fe/fe-core/src/main/java/org/apache/doris/transaction/GlobalTransactionMgr.java
index d7db7874a3f..692c3b25876 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/transaction/GlobalTransactionMgr.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/transaction/GlobalTransactionMgr.java
@@ -58,6 +58,7 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Map;
+import java.util.Optional;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
@@ -601,7 +602,7 @@ public class GlobalTransactionMgr implements
GlobalTransactionMgrIface {
long runningNum = 0;
try {
DatabaseTransactionMgr dbMgr = getDatabaseTransactionMgr(dbId);
- runningNum = dbMgr.getRunningTxnNums() +
dbMgr.getRunningRoutineLoadTxnNums();
+ runningNum = dbMgr.getRunningTxnNums();
totalRunningNum += runningNum;
} catch (AnalysisException e) {
LOG.warn("get database running transaction num failed", e);
@@ -631,6 +632,11 @@ public class GlobalTransactionMgr implements
GlobalTransactionMgrIface {
return dbTransactionMgr.getTxnStateInfoList(running, limit);
}
+ public Map<Long, List<Long>> getDbRunningTransInfo(long dbId) throws
AnalysisException {
+ return Optional.ofNullable(dbIdToDatabaseTransactionMgrs.get(dbId))
+
.map(DatabaseTransactionMgr::getDbRunningTransInfo).orElse(Maps.newHashMap());
+ }
+
@Override
public List<List<String>> getDbTransInfoByStatus(Long dbId,
TransactionStatus status) throws AnalysisException {
DatabaseTransactionMgr dbTransactionMgr =
getDatabaseTransactionMgr(dbId);
@@ -739,7 +745,8 @@ public class GlobalTransactionMgr implements
GlobalTransactionMgrIface {
@Override
public int getRunningTxnNums(Long dbId) throws AnalysisException {
- return getDatabaseTransactionMgr(dbId).getRunningTxnNums();
+ return Optional.ofNullable(dbIdToDatabaseTransactionMgrs.get(dbId))
+ .map(DatabaseTransactionMgr::getRunningTxnNums).orElse(0);
}
@Override
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/transaction/GlobalTransactionMgrIface.java
b/fe/fe-core/src/main/java/org/apache/doris/transaction/GlobalTransactionMgrIface.java
index 489b4240d0d..6ee622c9f18 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/transaction/GlobalTransactionMgrIface.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/transaction/GlobalTransactionMgrIface.java
@@ -39,6 +39,7 @@ import
org.apache.doris.transaction.TransactionState.TxnCoordinator;
import java.io.DataInput;
import java.io.IOException;
import java.util.List;
+import java.util.Map;
import java.util.concurrent.TimeoutException;
public interface GlobalTransactionMgrIface extends Writable {
@@ -152,6 +153,8 @@ public interface GlobalTransactionMgrIface extends Writable
{
public List<List<String>> getDbTransInfo(Long dbId, boolean running, int
limit) throws AnalysisException;
+ public Map<Long, List<Long>> getDbRunningTransInfo(long dbId) throws
AnalysisException;
+
public List<List<Comparable>> getTableTransInfo(long dbId, long txnId)
throws AnalysisException;
public List<List<Comparable>> getPartitionTransInfo(long dbId, long tid,
long tableId)
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/analysis/ShowDataStmtTest.java
b/fe/fe-core/src/test/java/org/apache/doris/analysis/ShowDataStmtTest.java
index 01fd0a19528..69f67b777cb 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/analysis/ShowDataStmtTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/analysis/ShowDataStmtTest.java
@@ -141,7 +141,7 @@ public class ShowDataStmtTest {
public void testNormal() throws AnalysisException, UserException {
ShowDataStmt stmt = new ShowDataStmt(null, null);
stmt.analyze(analyzer);
- Assert.assertEquals("SHOW DATA FROM `testDb`", stmt.toString());
+ Assert.assertEquals("SHOW DATA", stmt.toString());
Assert.assertEquals(4, stmt.getMetaData().getColumnCount());
Assert.assertEquals(false, stmt.hasTable());
@@ -161,7 +161,7 @@ public class ShowDataStmtTest {
stmt = new ShowDataStmt(null, Arrays.asList(orderByElementOne,
orderByElementTwo));
stmt.analyze(analyzer);
- Assert.assertEquals("SHOW DATA FROM `testDb` ORDER BY `ReplicaCount`
DESC, `Size` DESC",
+ Assert.assertEquals("SHOW DATA ORDER BY `ReplicaCount` DESC, `Size`
DESC",
stmt.toString());
}
}
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/common/proc/DbsProcDirTest.java
b/fe/fe-core/src/test/java/org/apache/doris/common/proc/DbsProcDirTest.java
index b3052643d2e..975378e1b16 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/common/proc/DbsProcDirTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/common/proc/DbsProcDirTest.java
@@ -22,6 +22,7 @@ import org.apache.doris.catalog.Env;
import org.apache.doris.common.AnalysisException;
import org.apache.doris.common.FeConstants;
import org.apache.doris.datasource.InternalCatalog;
+import org.apache.doris.transaction.GlobalTransactionMgr;
import com.google.common.collect.Lists;
import mockit.Expectations;
@@ -42,6 +43,9 @@ public class DbsProcDirTest {
@Mocked
private InternalCatalog catalog;
+ @Mocked
+ GlobalTransactionMgr transactionMgr;
+
// construct test case
// catalog
// | - db1
@@ -154,6 +158,18 @@ public class DbsProcDirTest {
minTimes = 0;
result = catalog;
+ env.getGlobalTransactionMgr();
+ minTimes = 0;
+ result = transactionMgr;
+
+ transactionMgr.getRunningTxnNums(db1.getId());
+ minTimes = 0;
+ result = 10;
+
+ transactionMgr.getRunningTxnNums(db2.getId());
+ minTimes = 0;
+ result = 20;
+
catalog.getDbNames();
minTimes = 0;
result = Lists.newArrayList("db1", "db2");
@@ -193,13 +209,13 @@ public class DbsProcDirTest {
Assert.assertTrue(result instanceof BaseProcResult);
Assert.assertEquals(Lists.newArrayList("DbId", "DbName", "TableNum",
"Size", "Quota",
- "LastConsistencyCheckTime", "ReplicaCount", "ReplicaQuota",
"TransactionQuota", "LastUpdateTime"),
- result.getColumnNames());
+ "LastConsistencyCheckTime", "ReplicaCount", "ReplicaQuota",
"RunningTransactionNum", "TransactionQuota",
+ "LastUpdateTime"), result.getColumnNames());
List<List<String>> rows = Lists.newArrayList();
rows.add(Arrays.asList(String.valueOf(db1.getId()), db1.getFullName(),
"0", "0.000 ", "1024.000 TB",
- FeConstants.null_string, "0", "1073741824", "1000",
FeConstants.null_string));
+ FeConstants.null_string, "0", "1073741824", "10", "1000",
FeConstants.null_string));
rows.add(Arrays.asList(String.valueOf(db2.getId()), db2.getFullName(),
"0", "0.000 ", "1024.000 TB",
- FeConstants.null_string, "0", "1073741824", "1000",
FeConstants.null_string));
+ FeConstants.null_string, "0", "1073741824", "20", "1000",
FeConstants.null_string));
Assert.assertEquals(rows, result.getRows());
}
@@ -230,7 +246,8 @@ public class DbsProcDirTest {
dir = new DbsProcDir(env, catalog);
result = dir.fetchResult();
Assert.assertEquals(Lists.newArrayList("DbId", "DbName", "TableNum",
"Size", "Quota",
- "LastConsistencyCheckTime", "ReplicaCount", "ReplicaQuota",
"TransactionQuota", "LastUpdateTime"),
+ "LastConsistencyCheckTime", "ReplicaCount", "ReplicaQuota",
"RunningTransactionNum", "TransactionQuota",
+ "LastUpdateTime"),
result.getColumnNames());
List<List<String>> rows = Lists.newArrayList();
Assert.assertEquals(rows, result.getRows());
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/transaction/DatabaseTransactionMgrTest.java
b/fe/fe-core/src/test/java/org/apache/doris/transaction/DatabaseTransactionMgrTest.java
index 1030fac8071..84a7d6d283d 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/transaction/DatabaseTransactionMgrTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/transaction/DatabaseTransactionMgrTest.java
@@ -144,8 +144,7 @@ public class DatabaseTransactionMgrTest {
public void testNormal() throws UserException {
DatabaseTransactionMgr masterDbTransMgr =
masterTransMgr.getDatabaseTransactionMgr(CatalogTestUtil.testDbId1);
Assert.assertEquals(4, masterDbTransMgr.getTransactionNum());
- Assert.assertEquals(2, masterDbTransMgr.getRunningTxnNums());
- Assert.assertEquals(1,
masterDbTransMgr.getRunningRoutineLoadTxnNums());
+ Assert.assertEquals(3, masterDbTransMgr.getRunningTxnNums());
Assert.assertEquals(1, masterDbTransMgr.getFinishedTxnNums());
DatabaseTransactionMgr slaveDbTransMgr =
slaveTransMgr.getDatabaseTransactionMgr(CatalogTestUtil.testDbId1);
Assert.assertEquals(1, slaveDbTransMgr.getTransactionNum());
@@ -178,14 +177,12 @@ public class DatabaseTransactionMgrTest {
long txnId2 = LabelToTxnId.get(CatalogTestUtil.testTxnLabel2);
masterDbTransMgr.abortTransaction(txnId2, "test abort transaction",
null);
Assert.assertEquals(2, masterDbTransMgr.getRunningTxnNums());
- Assert.assertEquals(0,
masterDbTransMgr.getRunningRoutineLoadTxnNums());
Assert.assertEquals(2, masterDbTransMgr.getFinishedTxnNums());
Assert.assertEquals(4, masterDbTransMgr.getTransactionNum());
long txnId3 = LabelToTxnId.get(CatalogTestUtil.testTxnLabel3);
masterDbTransMgr.abortTransaction(txnId3, "test abort transaction",
null);
Assert.assertEquals(1, masterDbTransMgr.getRunningTxnNums());
- Assert.assertEquals(0,
masterDbTransMgr.getRunningRoutineLoadTxnNums());
Assert.assertEquals(3, masterDbTransMgr.getFinishedTxnNums());
Assert.assertEquals(4, masterDbTransMgr.getTransactionNum());
}
@@ -286,8 +283,7 @@ public class DatabaseTransactionMgrTest {
long txnId = LabelToTxnId.get(CatalogTestUtil.testTxnLabel1);
TransactionState transactionState =
masterDbTransMgr.getTransactionState(txnId);
masterDbTransMgr.replayDeleteTransaction(transactionState);
- Assert.assertEquals(2, masterDbTransMgr.getRunningTxnNums());
- Assert.assertEquals(1,
masterDbTransMgr.getRunningRoutineLoadTxnNums());
+ Assert.assertEquals(3, masterDbTransMgr.getRunningTxnNums());
Assert.assertEquals(0, masterDbTransMgr.getFinishedTxnNums());
Assert.assertEquals(3, masterDbTransMgr.getTransactionNum());
Assert.assertNull(masterDbTransMgr.unprotectedGetTxnIdsByLabel(CatalogTestUtil.testTxnLabel1));
diff --git a/regression-test/suites/database_p0/test_alter_db.groovy
b/regression-test/suites/database_p0/test_alter_db.groovy
index 15e96ba51f4..667361eec34 100644
--- a/regression-test/suites/database_p0/test_alter_db.groovy
+++ b/regression-test/suites/database_p0/test_alter_db.groovy
@@ -43,7 +43,7 @@ suite("test_alter_db") {
assertTrue(found)
assertEquals("100.000 KB", result[4])
assertEquals("1024", result[7])
- assertEquals("1024", result[8])
+ assertEquals("1024", result[9])
sql """use ${dbName};"""
sql """
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]