diff --git a/fe/fe-core/src/main/java/org/apache/doris/journal/JournalEntity.java b/fe/fe-core/src/main/java/org/apache/doris/journal/JournalEntity.java index 1c3f7444dd954c..6f95f99aeb5f95 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/journal/JournalEntity.java +++ b/fe/fe-core/src/main/java/org/apache/doris/journal/JournalEntity.java @@ -948,6 +948,13 @@ public void readFields(DataInput in) throws IOException { isRead = true; break; } + // FIXME: support cloud related operation types. + case OperationType.OP_UPDATE_CLOUD_REPLICA: + case OperationType.OP_MODIFY_TTL_SECONDS: + case OperationType.OP_MODIFY_CLOUD_WARM_UP_JOB: { + isRead = true; + break; + } default: { IOException e = new IOException(); LOG.error("UNKNOWN Operation Type {}", opCode, e); diff --git a/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java b/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java index ffae17c6b1c6c9..e8f66d4ac58367 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java +++ b/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java @@ -1200,6 +1200,12 @@ public static void loadJournal(Env env, Long logId, JournalEntity journal) { // TODO: implement this while statistics finished related work. break; } + case OperationType.OP_UPDATE_CLOUD_REPLICA: + case OperationType.OP_MODIFY_TTL_SECONDS: + case OperationType.OP_MODIFY_CLOUD_WARM_UP_JOB: { + // TODO: support cloud replated operation type. + break; + } default: { IOException e = new IOException(); LOG.error("UNKNOWN Operation Type {}", opCode, e); diff --git a/fe/fe-core/src/main/java/org/apache/doris/persist/OperationType.java b/fe/fe-core/src/main/java/org/apache/doris/persist/OperationType.java index f5c71e58b72e63..6911003232db05 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/persist/OperationType.java +++ b/fe/fe-core/src/main/java/org/apache/doris/persist/OperationType.java @@ -384,6 +384,11 @@ public class OperationType { public static final short OP_ALTER_ROLE = 475; + // For cloud. + public static final short OP_UPDATE_CLOUD_REPLICA = 1000; + public static final short OP_MODIFY_TTL_SECONDS = 1001; + public static final short OP_MODIFY_CLOUD_WARM_UP_JOB = 1002; + /** * Get opcode name by op code. **/ diff --git a/fe/fe-core/src/main/java/org/apache/doris/persist/meta/MetaReader.java b/fe/fe-core/src/main/java/org/apache/doris/persist/meta/MetaReader.java index 8024105fe26211..8eb913d7f69b1f 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/persist/meta/MetaReader.java +++ b/fe/fe-core/src/main/java/org/apache/doris/persist/meta/MetaReader.java @@ -100,6 +100,15 @@ public static void read(File imageFile, Env env) throws IOException, DdlExceptio LOG.info("Skip {} module since empty meta length in the end.", metaIndex.name); continue; } + // FIXME: pick cloudWarmUpJob and remove below codes. + if (metaIndex.name.equals("cloudWarmUpJob")) { + LOG.warn("meta modules {} is not supported yet, ignore and skip it", metaIndex.name); + // If this is the last module, nothing need to do. + if (i < metaFooter.metaIndices.size() - 1) { + IOUtils.skipFully(dis, metaFooter.metaIndices.get(i + 1).offset - metaIndex.offset); + } + continue; + } // skip deprecated modules if (PersistMetaModules.DEPRECATED_MODULE_NAMES.contains(metaIndex.name)) { LOG.warn("meta modules {} is deprecated, ignore and skip it", metaIndex.name);