From 4e396d96e76699c98311b8eb2399bab04d926d99 Mon Sep 17 00:00:00 2001 From: w41ter Date: Fri, 23 Aug 2024 09:29:35 +0000 Subject: [PATCH] [fix](backup) Read db name from BackupJobInfo PR #37412 read the db name from BackupMeta, but it is not compatible, since BackupMeta is not serialized to json. --- .../main/java/org/apache/doris/backup/BackupJob.java | 2 +- .../main/java/org/apache/doris/backup/BackupMeta.java | 11 +---------- .../main/java/org/apache/doris/backup/RestoreJob.java | 4 ++-- .../org/apache/doris/backup/BackupHandlerTest.java | 2 +- .../java/org/apache/doris/backup/RestoreJobTest.java | 2 +- 5 files changed, 6 insertions(+), 15 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/backup/BackupJob.java b/fe/fe-core/src/main/java/org/apache/doris/backup/BackupJob.java index 4cd3bbf8a2472d..6f73334f0c2474 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/backup/BackupJob.java +++ b/fe/fe-core/src/main/java/org/apache/doris/backup/BackupJob.java @@ -523,7 +523,7 @@ private void prepareAndSendSnapshotTask() { } } - backupMeta = new BackupMeta(db.getName(), copiedTables, copiedResources); + backupMeta = new BackupMeta(copiedTables, copiedResources); // send tasks for (AgentTask task : batchTask.getAllTasks()) { diff --git a/fe/fe-core/src/main/java/org/apache/doris/backup/BackupMeta.java b/fe/fe-core/src/main/java/org/apache/doris/backup/BackupMeta.java index 56513e244d347b..0f1a043bdada3b 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/backup/BackupMeta.java +++ b/fe/fe-core/src/main/java/org/apache/doris/backup/BackupMeta.java @@ -44,9 +44,6 @@ import java.util.Map; public class BackupMeta implements Writable, GsonPostProcessable { - @SerializedName(value = "db") - private String dbName; - // tbl name -> tbl @SerializedName(value = "tblNameMap") private Map tblNameMap = Maps.newHashMap(); @@ -59,9 +56,7 @@ public class BackupMeta implements Writable, GsonPostProcessable { private BackupMeta() { } - public BackupMeta(String dbName, List tables, List resources) { - this.dbName = dbName; - + public BackupMeta(List
tables, List resources) { for (Table table : tables) { tblNameMap.put(table.getName(), table); tblIdMap.put(table.getId(), table); @@ -71,10 +66,6 @@ public BackupMeta(String dbName, List
tables, List resources) { } } - public String getDbName() { - return dbName; - } - public Map getTables() { return tblNameMap; } diff --git a/fe/fe-core/src/main/java/org/apache/doris/backup/RestoreJob.java b/fe/fe-core/src/main/java/org/apache/doris/backup/RestoreJob.java index 5b2a2e7e8220a5..7a29e6ff36bd29 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/backup/RestoreJob.java +++ b/fe/fe-core/src/main/java/org/apache/doris/backup/RestoreJob.java @@ -764,7 +764,7 @@ private void checkAndPrepareMeta() { } // reset all ids in this table - String srcDbName = backupMeta.getDbName(); + String srcDbName = jobInfo.dbName; Status st = remoteOlapTbl.resetIdsForRestore(env, db, replicaAlloc, reserveReplica, srcDbName); if (!st.ok()) { status = st; @@ -801,7 +801,7 @@ private void checkAndPrepareMeta() { return; } } else { - String srcDbName = backupMeta.getDbName(); + String srcDbName = jobInfo.dbName; remoteView.resetIdsForRestore(env, srcDbName, db.getFullName()); restoredTbls.add(remoteView); } diff --git a/fe/fe-core/src/test/java/org/apache/doris/backup/BackupHandlerTest.java b/fe/fe-core/src/test/java/org/apache/doris/backup/BackupHandlerTest.java index 1cc05e3d4e6b84..ba564599029994 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/backup/BackupHandlerTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/backup/BackupHandlerTest.java @@ -213,7 +213,7 @@ public Status getSnapshotInfoFile(String label, String backupTimestamp, List tbls = Lists.newArrayList(); tbls.add(tbl); List resources = Lists.newArrayList(); - BackupMeta backupMeta = new BackupMeta(null, tbls, resources); + BackupMeta backupMeta = new BackupMeta(tbls, resources); Map snapshotInfos = Maps.newHashMap(); for (Partition part : tbl.getPartitions()) { for (MaterializedIndex idx : part.getMaterializedIndices(IndexExtState.VISIBLE)) { diff --git a/fe/fe-core/src/test/java/org/apache/doris/backup/RestoreJobTest.java b/fe/fe-core/src/test/java/org/apache/doris/backup/RestoreJobTest.java index 7ab6317e0336be..43eb00e38073d5 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/backup/RestoreJobTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/backup/RestoreJobTest.java @@ -261,7 +261,7 @@ boolean await(long timeout, TimeUnit unit) { List
tbls = Lists.newArrayList(); List resources = Lists.newArrayList(); tbls.add(expectedRestoreTbl); - backupMeta = new BackupMeta(null, tbls, resources); + backupMeta = new BackupMeta(tbls, resources); } @Test