diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java index 96db31af43..3975fe8b38 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java @@ -216,7 +216,8 @@ public class Database extends MetaObject implements Writable, DatabaseIf public void setNameWithLock(String newName) { writeLock(); try { - this.fullQualifiedName = newName; + // ClusterNamespace.getNameFromFullName should be removed in 3.0 + this.fullQualifiedName = ClusterNamespace.getNameFromFullName(newName); for (Table table : idToTable.values()) { table.setQualifiedDbName(fullQualifiedName); } diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java index 8832aa25dc..c977b61be2 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java @@ -649,7 +649,7 @@ public class InternalCatalog implements CatalogIf { String tableName = recoverStmt.getTableName(); String newTableName = recoverStmt.getNewTableName(); - Database db = (Database) getDbOrDdlException(dbName); + Database db = getDbOrDdlException(dbName); db.writeLockOrDdlException(); try { if (Strings.isNullOrEmpty(newTableName)) { @@ -698,10 +698,6 @@ public class InternalCatalog implements CatalogIf { } } - public void replayEraseDatabase(long dbId) throws DdlException { - Env.getCurrentRecycleBin().replayEraseDatabase(dbId); - } - public void replayRecoverDatabase(RecoverInfo info) { long dbId = info.getDbId(); String newDbName = info.getNewDbName(); diff --git a/fe/fe-core/src/main/java/org/apache/doris/persist/RecoverInfo.java b/fe/fe-core/src/main/java/org/apache/doris/persist/RecoverInfo.java index 7809b05d0e..15764a99b4 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/persist/RecoverInfo.java +++ b/fe/fe-core/src/main/java/org/apache/doris/persist/RecoverInfo.java @@ -18,9 +18,11 @@ package org.apache.doris.persist; import org.apache.doris.catalog.Env; +import org.apache.doris.cluster.ClusterNamespace; import org.apache.doris.common.FeMetaVersion; import org.apache.doris.common.io.Text; import org.apache.doris.common.io.Writable; +import org.apache.doris.persist.gson.GsonPostProcessable; import org.apache.doris.persist.gson.GsonUtils; import com.google.gson.annotations.SerializedName; @@ -29,7 +31,7 @@ import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; -public class RecoverInfo implements Writable { +public class RecoverInfo implements Writable, GsonPostProcessable { @SerializedName(value = "dbId") private long dbId; @SerializedName(value = "newDbName") @@ -102,4 +104,9 @@ public class RecoverInfo implements Writable { tableId = in.readLong(); partitionId = in.readLong(); } + + @Override + public void gsonPostProcess() throws IOException { + newDbName = ClusterNamespace.getNameFromFullName(newDbName); + } }