Cherry-pick #38949
This commit is contained in:
@ -46,6 +46,7 @@ import org.apache.doris.common.io.DeepCopy;
|
||||
import org.apache.doris.common.io.Text;
|
||||
import org.apache.doris.common.util.PropertyAnalyzer;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.InternalCatalog;
|
||||
import org.apache.doris.mtmv.MTMVRelatedTableIf;
|
||||
import org.apache.doris.mtmv.MTMVSnapshotIf;
|
||||
import org.apache.doris.mtmv.MTMVVersionSnapshot;
|
||||
@ -2156,7 +2157,6 @@ public class OlapTable extends Table implements MTMVRelatedTableIf {
|
||||
return baseIndexMeta.getSchemaVersion();
|
||||
}
|
||||
|
||||
|
||||
public void setEnableSingleReplicaCompaction(boolean enableSingleReplicaCompaction) {
|
||||
if (tableProperty == null) {
|
||||
tableProperty = new TableProperty(new HashMap<>());
|
||||
@ -2773,6 +2773,37 @@ public class OlapTable extends Table implements MTMVRelatedTableIf {
|
||||
return tableAttributes.getVisibleVersion();
|
||||
}
|
||||
|
||||
// Get the table versions in batch.
|
||||
public static List<Long> getVisibleVersionByTableIds(Collection<Long> tableIds) {
|
||||
List<OlapTable> tables = new ArrayList<>();
|
||||
|
||||
InternalCatalog catalog = Env.getCurrentEnv().getInternalCatalog();
|
||||
for (long tableId : tableIds) {
|
||||
Table table = catalog.getTableByTableId(tableId);
|
||||
if (table == null) {
|
||||
throw new RuntimeException("get table visible version failed, no such table " + tableId + " exists");
|
||||
}
|
||||
if (table.getType() != TableType.OLAP) {
|
||||
throw new RuntimeException(
|
||||
"get table visible version failed, table " + tableId + " is not a OLAP table");
|
||||
}
|
||||
tables.add((OlapTable) table);
|
||||
}
|
||||
|
||||
return getVisibleVersionInBatch(tables);
|
||||
}
|
||||
|
||||
// Get the table versions in batch.
|
||||
public static List<Long> getVisibleVersionInBatch(Collection<OlapTable> tables) {
|
||||
if (tables.isEmpty()) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
return tables.stream()
|
||||
.map(table -> table.tableAttributes.getVisibleVersion())
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public long getVisibleVersionTime() {
|
||||
return tableAttributes.getVisibleVersionTime();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user