This is an automated email from the ASF dual-hosted git repository.
errose28 pushed a commit to branch HDDS-14496-zdu
in repository https://gitbox.apache.org/repos/asf/ozone.git
The following commit(s) were added to refs/heads/HDDS-14496-zdu by this push:
new 97b60475a4c HDDS-15386. Remove LayoutFeature interface (#10376)
97b60475a4c is described below
commit 97b60475a4c0f31d328d01cd71fb7566ba114f5d
Author: Ethan Rose <[email protected]>
AuthorDate: Thu Jun 11 17:53:15 2026 -0400
HDDS-15386. Remove LayoutFeature interface (#10376)
Co-authored-by: Cursor <[email protected]>
---
.../apache/hadoop/ozone/upgrade/LayoutFeature.java | 32 --------------------
.../ozone/container/common/DatanodeStorage.java | 7 ++---
.../container/common/TestDatanodeStateMachine.java | 2 +-
.../common/helpers/TestDatanodeIdYaml.java | 8 ++---
.../TestDatanodeStartupInvalidApparentVersion.java | 2 +-
.../TestDatanodeUpgradeToContainerIdsTable.java | 4 +--
.../upgrade/TestDatanodeUpgradeToHBaseSupport.java | 4 +--
.../upgrade/TestDatanodeUpgradeToSchemaV3.java | 34 +++++++++++-----------
.../hadoop/hdds/upgrade/HDDSLayoutFeature.java | 5 ++--
.../hadoop/hdds/upgrade/TestHDDSLayoutFeature.java | 8 ++---
.../hadoop/hdds/scm/server/SCMStorageConfig.java | 4 +--
.../TestScmStartupInvalidApparentVersion.java | 2 +-
.../ozone/container/common/TestEndPoint.java | 2 +-
.../schemaupgrade/TestUpgradeContainerSchema.java | 2 +-
.../apache/hadoop/fs/ozone/TestHSyncUpgrade.java | 2 +-
.../TestDNDataDistributionFinalization.java | 4 +--
.../TestScmDataDistributionFinalization.java | 4 +--
.../hadoop/hdds/upgrade/TestScmHAFinalization.java | 4 +--
.../hadoop/ozone/om/TestOMUpgradeFinalization.java | 2 +-
.../om/TestOmStartupInvalidApparentVersion.java | 2 +-
.../om/multitenant/TestMultiTenantVolume.java | 2 +-
.../ozone/om/service/TestBlockDeletionService.java | 4 +--
.../hadoop/ozone/om/snapshot/TestOmSnapshot.java | 2 +-
.../hadoop/ozone/UniformDatanodesFactory.java | 26 +++++------------
.../hadoop/ozone/om/upgrade/OMLayoutFeature.java | 5 ++--
.../ozone/om/upgrade/OMLayoutFeatureAspect.java | 6 ++--
.../ozone/om/upgrade/TestOMLayoutFeature.java | 8 ++---
27 files changed, 70 insertions(+), 117 deletions(-)
diff --git
a/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/upgrade/LayoutFeature.java
b/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/upgrade/LayoutFeature.java
deleted file mode 100644
index 7f7374c8137..00000000000
---
a/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/upgrade/LayoutFeature.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.hadoop.ozone.upgrade;
-
-import org.apache.hadoop.hdds.ComponentVersion;
-
-/**
- * Generic Layout feature interface for Ozone.
- */
-public interface LayoutFeature extends ComponentVersion {
- int layoutVersion();
-
- @Override
- default int serialize() {
- return this.layoutVersion();
- }
-}
diff --git
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/DatanodeStorage.java
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/DatanodeStorage.java
index fe267783437..a6d012a7f65 100644
---
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/DatanodeStorage.java
+++
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/DatanodeStorage.java
@@ -46,11 +46,10 @@ public DatanodeStorage(ConfigurationSource conf, String
dataNodeId)
DATANODE_LAYOUT_VERSION_DIR, dataNodeId,
getDefaultApparentVersion(conf));
}
- public DatanodeStorage(OzoneConfiguration conf, String dataNodeId,
- int layoutVersion)
+ public DatanodeStorage(OzoneConfiguration conf, String dataNodeId, int
apparentVersion)
throws IOException {
super(NodeType.DATANODE, ServerUtils.getOzoneMetaDirPath(conf),
- DATANODE_LAYOUT_VERSION_DIR, dataNodeId, layoutVersion);
+ DATANODE_LAYOUT_VERSION_DIR, dataNodeId, apparentVersion);
}
public DatanodeStorage(ConfigurationSource conf)
@@ -99,7 +98,7 @@ private static int
getDefaultApparentVersion(ConfigurationSource conf) {
File dnIdFile = new File(HddsServerUtil.getDatanodeIdFilePath(conf));
if (dnIdFile.exists()) {
- defaultApparentVersion =
HDDSLayoutFeature.INITIAL_VERSION.layoutVersion();
+ defaultApparentVersion = HDDSLayoutFeature.INITIAL_VERSION.serialize();
}
return defaultApparentVersion;
diff --git
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java
index 1019fae622b..f47fde132c9 100644
---
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java
+++
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java
@@ -231,7 +231,7 @@ public void testDatanodeStateContext() throws IOException,
DatanodeStorage layoutStorage = new DatanodeStorage(conf,
UUID.randomUUID().toString(),
- HDDSLayoutFeature.DATANODE_SCHEMA_V3.layoutVersion());
+ HDDSLayoutFeature.DATANODE_SCHEMA_V3.serialize());
layoutStorage.initialize();
// This execute will invoke getVersion calls against all SCM endpoints
diff --git
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/helpers/TestDatanodeIdYaml.java
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/helpers/TestDatanodeIdYaml.java
index 334e08ad117..27b4e1c135b 100644
---
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/helpers/TestDatanodeIdYaml.java
+++
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/helpers/TestDatanodeIdYaml.java
@@ -62,7 +62,7 @@ void
testWriteReadBeforeRatisDatastreamPortLayoutVersion(@TempDir File dir)
conf.set(HddsConfigKeys.OZONE_METADATA_DIRS, dir.toString());
DatanodeStorage layoutStorage = new DatanodeStorage(conf,
UUID.randomUUID().toString(),
- HDDSLayoutFeature.DATANODE_SCHEMA_V3.layoutVersion());
+ HDDSLayoutFeature.DATANODE_SCHEMA_V3.serialize());
layoutStorage.initialize();
DatanodeIdYaml.createDatanodeIdFile(original, file, conf);
@@ -86,7 +86,7 @@ void
testWriteReadAfterRatisDatastreamPortLayoutVersion(@TempDir File dir)
DatanodeStorage layoutStorage = new DatanodeStorage(conf,
UUID.randomUUID().toString(),
HDDSLayoutFeature.RATIS_DATASTREAM_PORT_IN_DATANODEDETAILS
- .layoutVersion());
+ .serialize());
layoutStorage.initialize();
DatanodeIdYaml.createDatanodeIdFile(original, file, conf);
@@ -106,7 +106,7 @@ void testWriteReadBeforeWebUIPortLayoutVersion(@TempDir
File dir)
conf.set(HddsConfigKeys.OZONE_METADATA_DIRS, dir.toString());
DatanodeStorage layoutStorage = new DatanodeStorage(conf,
UUID.randomUUID().toString(),
- HDDSLayoutFeature.DATANODE_SCHEMA_V3.layoutVersion());
+ HDDSLayoutFeature.DATANODE_SCHEMA_V3.serialize());
layoutStorage.initialize();
DatanodeIdYaml.createDatanodeIdFile(original, file, conf);
@@ -127,7 +127,7 @@ void testWriteReadAfterWebUIPortLayoutVersion(@TempDir File
dir)
conf.set(HddsConfigKeys.OZONE_METADATA_DIRS, dir.toString());
DatanodeStorage layoutStorage = new DatanodeStorage(conf,
UUID.randomUUID().toString(),
- HDDSLayoutFeature.WEBUI_PORTS_IN_DATANODEDETAILS.layoutVersion());
+ HDDSLayoutFeature.WEBUI_PORTS_IN_DATANODEDETAILS.serialize());
layoutStorage.initialize();
DatanodeIdYaml.createDatanodeIdFile(original, file, conf);
diff --git
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeStartupInvalidApparentVersion.java
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeStartupInvalidApparentVersion.java
index ccc94d9aa2c..3cf2b1c2b7c 100644
---
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeStartupInvalidApparentVersion.java
+++
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeStartupInvalidApparentVersion.java
@@ -48,7 +48,7 @@ public class TestDatanodeStartupInvalidApparentVersion {
public void
testStartupFailsWhenApparentVersionBetweenLastLayoutFeatureAndZdu()
throws Exception {
assertStartupFailsWithComponentVersionMessage(
- HDDSLayoutFeature.STORAGE_SPACE_DISTRIBUTION.layoutVersion() + 1);
+ HDDSLayoutFeature.STORAGE_SPACE_DISTRIBUTION.serialize() + 1);
}
@Test
diff --git
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToContainerIdsTable.java
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToContainerIdsTable.java
index 86deef6fae0..a2d158c01d0 100644
---
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToContainerIdsTable.java
+++
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToContainerIdsTable.java
@@ -85,7 +85,7 @@ public void testContainerTableAccessBeforeAndAfterUpgrade()
throws Exception {
InetSocketAddress address = scmRpcServer.getListenerAddress();
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.HBASE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.HBASE_SUPPORT.serialize());
ContainerDispatcher dispatcher = dsm.getContainer().getDispatcher();
final Pipeline pipeline =
MockPipeline.createPipeline(Collections.singletonList(dsm.getDatanodeDetails()));
@@ -122,7 +122,7 @@ public void testContainerTableFinalizeRetry() throws
Exception {
InetSocketAddress address = scmRpcServer.getListenerAddress();
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.HBASE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.HBASE_SUPPORT.serialize());
ContainerDispatcher dispatcher = dsm.getContainer().getDispatcher();
final Pipeline pipeline =
MockPipeline.createPipeline(Collections.singletonList(dsm.getDatanodeDetails()));
diff --git
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToHBaseSupport.java
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToHBaseSupport.java
index 11bec6a5dd1..e1061c1372e 100644
---
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToHBaseSupport.java
+++
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToHBaseSupport.java
@@ -83,7 +83,7 @@ public void testIncrementalChunkListBeforeAndAfterUpgrade()
throws Exception {
InetSocketAddress address = scmRpcServer.getListenerAddress();
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.HADOOP_PRC_PORTS_IN_DATANODEDETAILS.layoutVersion());
+ HDDSLayoutFeature.HADOOP_PRC_PORTS_IN_DATANODEDETAILS.serialize());
ContainerDispatcher dispatcher = dsm.getContainer().getDispatcher();
final Pipeline pipeline = MockPipeline.createPipeline(
Collections.singletonList(dsm.getDatanodeDetails()));
@@ -118,7 +118,7 @@ public void testBlockFinalizationBeforeAndAfterUpgrade()
throws Exception {
InetSocketAddress address = scmRpcServer.getListenerAddress();
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.HADOOP_PRC_PORTS_IN_DATANODEDETAILS.layoutVersion());
+ HDDSLayoutFeature.HADOOP_PRC_PORTS_IN_DATANODEDETAILS.serialize());
ContainerDispatcher dispatcher = dsm.getContainer().getDispatcher();
final Pipeline pipeline = MockPipeline.createPipeline(
Collections.singletonList(dsm.getDatanodeDetails()));
diff --git
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToSchemaV3.java
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToSchemaV3.java
index 3747514a95c..a7dce076a75 100644
---
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToSchemaV3.java
+++
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/upgrade/TestDatanodeUpgradeToSchemaV3.java
@@ -121,7 +121,7 @@ public void testDBOnHddsVolume(boolean schemaV3Enabled)
throws Exception {
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
HddsVolume dataVolume = (HddsVolume) dsm.getContainer().getVolumeSet()
.getVolumesList().get(0);
assertNull(dataVolume.getDbVolume());
@@ -159,7 +159,7 @@ public void testDBOnDbVolume(boolean schemaV3Enabled)
throws Exception {
UpgradeTestHelper.addDbVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
HddsVolume dataVolume = (HddsVolume) dsm.getContainer().getVolumeSet()
.getVolumesList().get(0);
assertNull(dataVolume.getDbParentDir());
@@ -202,7 +202,7 @@ public void testDBCreatedInFinalize(boolean schemaV3Enabled)
// Set layout version.
DatanodeStorage layoutStorage = new DatanodeStorage(conf,
UUID.randomUUID().toString(),
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
layoutStorage.initialize();
dsm = new DatanodeStateMachine(
ContainerTestUtils.createDatanodeDetails(), conf);
@@ -219,7 +219,7 @@ public void testDBCreatedInFinalize(boolean schemaV3Enabled)
// Restart DN and finalize upgrade
dsm = UpgradeTestHelper.restartDatanode(conf, dsm, false, tempFolder,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion(), true);
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize(), true);
dsm.getVersionManager().finalizeUpgrade();
// RocksDB is created by upgrade action
@@ -249,7 +249,7 @@ public void testFinalizeTwice(boolean schemaV3Enabled)
throws Exception {
UpgradeTestHelper.addDbVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
dsm.getVersionManager().finalizeUpgrade();
DbVolume dbVolume = ((HddsVolume) dsm.getContainer().getVolumeSet()
@@ -276,13 +276,13 @@ public void testAddHddsVolumeAfterFinalize(boolean
schemaV3Enabled)
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
dsm.getVersionManager().finalizeUpgrade();
// Add a new HddsVolume. It should have DB created after DN restart.
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.restartDatanode(conf, dsm, false, tempFolder,
address,
- HDDSLayoutFeature.DATANODE_SCHEMA_V3.layoutVersion(),
+ HDDSLayoutFeature.DATANODE_SCHEMA_V3.serialize(),
false);
for (StorageVolume vol:
dsm.getContainer().getVolumeSet().getVolumesList()) {
@@ -310,7 +310,7 @@ public void testAddDbVolumeAfterFinalize(boolean
schemaV3Enabled)
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
HddsVolume hddsVolume = (HddsVolume) dsm.getContainer().getVolumeSet()
.getVolumesList().get(0);
assertNull(hddsVolume.getDbParentDir());
@@ -323,7 +323,7 @@ public void testAddDbVolumeAfterFinalize(boolean
schemaV3Enabled)
// Add a new DbVolume
UpgradeTestHelper.addDbVolume(conf, tempFolder);
dsm = UpgradeTestHelper.restartDatanode(conf, dsm, false, tempFolder,
address,
- HDDSLayoutFeature.DATANODE_SCHEMA_V3.layoutVersion(),
+ HDDSLayoutFeature.DATANODE_SCHEMA_V3.serialize(),
false);
// HddsVolume should still use the rocksDB under it's volume
@@ -353,13 +353,13 @@ public void testAddDbAndHddsVolumeAfterFinalize(boolean
schemaV3Enabled)
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
dsm.getVersionManager().finalizeUpgrade();
UpgradeTestHelper.addDbVolume(conf, tempFolder);
File newDataVolume = UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.restartDatanode(conf, dsm, false, tempFolder,
address,
- HDDSLayoutFeature.DATANODE_SCHEMA_V3.layoutVersion(),
+ HDDSLayoutFeature.DATANODE_SCHEMA_V3.serialize(),
false);
DbVolume dbVolume = (DbVolume) dsm.getContainer().getDbVolumeSet()
@@ -422,7 +422,7 @@ public void testWrite(boolean enable, String
expectedVersion)
// Disable Schema V3
conf.setBoolean(DatanodeConfiguration.CONTAINER_SCHEMA_V3_ENABLED, false);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
ContainerDispatcher dispatcher = dsm.getContainer().getDispatcher();
dsm.getVersionManager().finalizeUpgrade();
@@ -442,7 +442,7 @@ public void testWrite(boolean enable, String
expectedVersion)
conf.setBoolean(DatanodeConfiguration.CONTAINER_SCHEMA_V3_ENABLED,
enable);
dsm = UpgradeTestHelper.restartDatanode(conf, dsm, false, tempFolder,
address,
- HDDSLayoutFeature.DATANODE_SCHEMA_V3.layoutVersion(),
+ HDDSLayoutFeature.DATANODE_SCHEMA_V3.serialize(),
false);
dispatcher = dsm.getContainer().getDispatcher();
@@ -471,7 +471,7 @@ public void testReadsDuringFinalize(boolean schemaV3Enabled)
InetSocketAddress address = scmRpcServer.getListenerAddress();
UpgradeTestHelper.addHddsVolume(conf, tempFolder);
dsm = UpgradeTestHelper.startPreFinalizedDatanode(conf, tempFolder, dsm,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
ContainerDispatcher dispatcher = dsm.getContainer().getDispatcher();
final Pipeline pipeline = MockPipeline.createPipeline(
Collections.singletonList(dsm.getDatanodeDetails()));
@@ -516,7 +516,7 @@ public void testFinalizeFailure(boolean schemaV3Enabled)
throws Exception {
// Set layout version.
DatanodeStorage layoutStorage = new DatanodeStorage(conf,
UUID.randomUUID().toString(),
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion());
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize());
layoutStorage.initialize();
dsm = new DatanodeStateMachine(
ContainerTestUtils.createDatanodeDetails(), conf);
@@ -532,7 +532,7 @@ public void testFinalizeFailure(boolean schemaV3Enabled)
throws Exception {
// Restart DN
dsm = UpgradeTestHelper.restartDatanode(conf, dsm, false, tempFolder,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion(), true);
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize(), true);
ContainerDispatcher dispatcher = dsm.getContainer().getDispatcher();
// Write some data.
@@ -572,7 +572,7 @@ public void testFinalizeFailure(boolean schemaV3Enabled)
throws Exception {
// SchemaV3 is not finalized, so still ERASURE_CODED_STORAGE_SUPPORT
dsm = UpgradeTestHelper.restartDatanode(conf, dsm, false, tempFolder,
address,
- HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.layoutVersion(), true);
+ HDDSLayoutFeature.ERASURE_CODED_STORAGE_SUPPORT.serialize(), true);
dispatcher = dsm.getContainer().getDispatcher();
// Old data is readable after DN restart
diff --git
a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/upgrade/HDDSLayoutFeature.java
b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/upgrade/HDDSLayoutFeature.java
index 9978787e43d..96fa5a89897 100644
---
a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/upgrade/HDDSLayoutFeature.java
+++
b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/upgrade/HDDSLayoutFeature.java
@@ -25,14 +25,13 @@
import java.util.TreeMap;
import org.apache.hadoop.hdds.ComponentVersion;
import org.apache.hadoop.hdds.HDDSVersion;
-import org.apache.hadoop.ozone.upgrade.LayoutFeature;
/**
* List of HDDS Layout Features. All version management has been migrated to
{@link HDDSVersion} and no new additions
* should be made to this class. Existing versions are kept here for backwards
compatibility when upgrading to this
* version from older versions.
*/
-public enum HDDSLayoutFeature implements LayoutFeature {
+public enum HDDSLayoutFeature implements ComponentVersion {
////////////////////////////// //////////////////////////////
INITIAL_VERSION(0, "Initial Layout Version"),
DATANODE_SCHEMA_V2(1, "Datanode RocksDB Schema Version 2 (with column " +
@@ -70,7 +69,7 @@ public enum HDDSLayoutFeature implements LayoutFeature {
}
@Override
- public int layoutVersion() {
+ public int serialize() {
return layoutVersion;
}
diff --git
a/hadoop-hdds/framework/src/test/java/org/apache/hadoop/hdds/upgrade/TestHDDSLayoutFeature.java
b/hadoop-hdds/framework/src/test/java/org/apache/hadoop/hdds/upgrade/TestHDDSLayoutFeature.java
index b8a0662d31a..20b943065f5 100644
---
a/hadoop-hdds/framework/src/test/java/org/apache/hadoop/hdds/upgrade/TestHDDSLayoutFeature.java
+++
b/hadoop-hdds/framework/src/test/java/org/apache/hadoop/hdds/upgrade/TestHDDSLayoutFeature.java
@@ -37,9 +37,9 @@ public void
testHDDSLayoutFeaturesHaveIncreasingLayoutVersion() {
for (HDDSLayoutFeature lf : values) {
// This will skip the jump from the last HDDSLayoutFeature to
HDDSVersion#ZDU,
// since that is expected to be a larger version increment.
- assertEquals(currVersion + 1, lf.layoutVersion(),
+ assertEquals(currVersion + 1, lf.serialize(),
"Expected monotonically increasing layout version for " + lf);
- currVersion = lf.layoutVersion();
+ currVersion = lf.serialize();
}
}
@@ -52,7 +52,7 @@ public void testNoNewHDDSLayoutFeaturesAdded() {
HDDSLayoutFeature lastFeature =
HDDSLayoutFeature.values()[numHDDSLayoutFeatures - 1];
assertEquals(11, numHDDSLayoutFeatures);
assertEquals(HDDSLayoutFeature.STORAGE_SPACE_DISTRIBUTION, lastFeature);
- assertEquals(10, lastFeature.layoutVersion());
+ assertEquals(10, lastFeature.serialize());
}
@Test
@@ -87,7 +87,7 @@ public void testDeserializeUnknownVersionReturnsNull() {
public void testIsSupportedByFeatureBoundary() {
for (HDDSLayoutFeature feature : HDDSLayoutFeature.values()) {
// A layout feature should support itself.
- int layoutVersion = feature.layoutVersion();
+ int layoutVersion = feature.serialize();
assertSupportedBy(feature, feature);
if (layoutVersion > 0) {
// A layout feature should not be supported by older features.
diff --git
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/SCMStorageConfig.java
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/SCMStorageConfig.java
index 75d2c557b64..3f42861777e 100644
---
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/SCMStorageConfig.java
+++
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/SCMStorageConfig.java
@@ -39,7 +39,7 @@
*/
public class SCMStorageConfig extends Storage {
- public static final String TESTING_INIT_LAYOUT_VERSION_KEY =
"testing.hdds.scm.init.layout.version";
+ public static final String TESTING_INIT_APPARENT_VERSION_KEY =
"testing.hdds.scm.init.apparent.version";
/**
* Construct SCMStorageConfig.
@@ -47,7 +47,7 @@ public class SCMStorageConfig extends Storage {
*/
public SCMStorageConfig(OzoneConfiguration conf) throws IOException {
super(NodeType.SCM, ServerUtils.getScmDbDir(conf), STORAGE_DIR,
- getInitApparentVersion(conf, TESTING_INIT_LAYOUT_VERSION_KEY,
+ getInitApparentVersion(conf, TESTING_INIT_APPARENT_VERSION_KEY,
HDDSVersion.SOFTWARE_VERSION::serialize));
}
diff --git
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/upgrade/TestScmStartupInvalidApparentVersion.java
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/upgrade/TestScmStartupInvalidApparentVersion.java
index 0f678bdf5d7..16272a2fb33 100644
---
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/upgrade/TestScmStartupInvalidApparentVersion.java
+++
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/upgrade/TestScmStartupInvalidApparentVersion.java
@@ -51,7 +51,7 @@ public class TestScmStartupInvalidApparentVersion {
@Test
public void
testStartupFailsWhenApparentVersionBetweenLastLayoutFeatureAndZdu() throws
Exception {
assertStartupFailsWithComponentVersionMessage(
- HDDSLayoutFeature.STORAGE_SPACE_DISTRIBUTION.layoutVersion() + 1);
+ HDDSLayoutFeature.STORAGE_SPACE_DISTRIBUTION.serialize() + 1);
}
@Test
diff --git
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/ozone/container/common/TestEndPoint.java
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/ozone/container/common/TestEndPoint.java
index feb244edb56..3e7bccb811d 100644
---
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/ozone/container/common/TestEndPoint.java
+++
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/ozone/container/common/TestEndPoint.java
@@ -120,7 +120,7 @@ static void setUp() throws Exception {
dnDetails = randomDatanodeDetails();
DatanodeStorage layoutStorage = new DatanodeStorage(ozoneConf,
UUID.randomUUID().toString(),
- HDDSLayoutFeature.DATANODE_SCHEMA_V3.layoutVersion());
+ HDDSLayoutFeature.DATANODE_SCHEMA_V3.serialize());
layoutStorage.initialize();
scmServer = SCMTestUtils.startScmRpcServer(ozoneConf, scmServerImpl);
serverAddress = scmServer.getListenerAddress();
diff --git
a/hadoop-ozone/cli-repair/src/test/java/org/apache/hadoop/ozone/repair/datanode/schemaupgrade/TestUpgradeContainerSchema.java
b/hadoop-ozone/cli-repair/src/test/java/org/apache/hadoop/ozone/repair/datanode/schemaupgrade/TestUpgradeContainerSchema.java
index 351b2d0477b..3cf958525e8 100644
---
a/hadoop-ozone/cli-repair/src/test/java/org/apache/hadoop/ozone/repair/datanode/schemaupgrade/TestUpgradeContainerSchema.java
+++
b/hadoop-ozone/cli-repair/src/test/java/org/apache/hadoop/ozone/repair/datanode/schemaupgrade/TestUpgradeContainerSchema.java
@@ -139,7 +139,7 @@ void setup(@TempDir Path testRoot) throws Exception {
private void initDatanode(HDDSLayoutFeature layoutFeature) throws
IOException {
DatanodeStorage layoutStorage = new DatanodeStorage(conf,
datanodeDetails.getUuidString(),
- layoutFeature.layoutVersion());
+ layoutFeature.serialize());
layoutStorage.initialize();
String idFilePath =
Objects.requireNonNull(HddsServerUtil.getDatanodeIdFilePath(conf), "datanode.id
path");
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestHSyncUpgrade.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestHSyncUpgrade.java
index ff5680a9fd3..56e82f8927f 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestHSyncUpgrade.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestHSyncUpgrade.java
@@ -111,7 +111,7 @@ public void init() throws Exception {
conf.setTimeDuration(OZONE_OM_LEASE_HARD_LIMIT,
EXPIRE_THRESHOLD_MS, TimeUnit.MILLISECONDS);
conf.set(OzoneConfigKeys.OZONE_OM_LEASE_SOFT_LIMIT, "0s");
- conf.setInt(OMStorage.TESTING_INIT_APPARENT_VERSION_KEY,
OMLayoutFeature.MULTITENANCY_SCHEMA.layoutVersion());
+ conf.setInt(OMStorage.TESTING_INIT_APPARENT_VERSION_KEY,
OMLayoutFeature.MULTITENANCY_SCHEMA.serialize());
conf.set(OMConfigKeys.OZONE_OM_UPGRADE_FINALIZATION_CHECK_INTERVAL,
"10ms");
ClientConfigForTesting.newBuilder(StorageUnit.BYTES)
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestDNDataDistributionFinalization.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestDNDataDistributionFinalization.java
index 5f038f6b7c4..76bab76d66b 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestDNDataDistributionFinalization.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestDNDataDistributionFinalization.java
@@ -75,7 +75,7 @@ public void cleanup() {
public void init(OzoneConfiguration conf) throws Exception {
- conf.setInt(SCMStorageConfig.TESTING_INIT_LAYOUT_VERSION_KEY,
HDDSLayoutFeature.HBASE_SUPPORT.serialize());
+ conf.setInt(SCMStorageConfig.TESTING_INIT_APPARENT_VERSION_KEY,
HDDSLayoutFeature.HBASE_SUPPORT.serialize());
conf.setTimeDuration(OZONE_BLOCK_DELETING_SERVICE_INTERVAL, 100,
TimeUnit.MILLISECONDS);
conf.setTimeDuration(OZONE_BLOCK_DELETING_SERVICE_INTERVAL, 100,
@@ -100,7 +100,7 @@ public void init(OzoneConfiguration conf) throws Exception {
.setNumOfOzoneManagers(1)
.setNumDatanodes(NUM_DATANODES)
.setDatanodeFactory(UniformDatanodesFactory.newBuilder()
-
.setLayoutVersion(HDDSLayoutFeature.INITIAL_VERSION.layoutVersion())
+ .setApparentVersion(HDDSLayoutFeature.INITIAL_VERSION.serialize())
.build());
this.cluster = clusterBuilder.build();
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmDataDistributionFinalization.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmDataDistributionFinalization.java
index 3339e3c2387..6707cd87f00 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmDataDistributionFinalization.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmDataDistributionFinalization.java
@@ -98,7 +98,7 @@ public void init(OzoneConfiguration conf) throws Exception {
SCMConfigurator configurator = new SCMConfigurator();
- conf.setInt(SCMStorageConfig.TESTING_INIT_LAYOUT_VERSION_KEY,
HDDSLayoutFeature.HBASE_SUPPORT.layoutVersion());
+ conf.setInt(SCMStorageConfig.TESTING_INIT_APPARENT_VERSION_KEY,
HDDSLayoutFeature.HBASE_SUPPORT.serialize());
conf.setTimeDuration(OZONE_BLOCK_DELETING_SERVICE_INTERVAL, 100,
TimeUnit.MILLISECONDS);
conf.setTimeDuration(OZONE_BLOCK_DELETING_SERVICE_INTERVAL, 100,
TimeUnit.MILLISECONDS);
conf.setTimeDuration(OZONE_SCM_HEARTBEAT_PROCESS_INTERVAL, 100,
TimeUnit.MILLISECONDS);
@@ -127,7 +127,7 @@ public void init(OzoneConfiguration conf) throws Exception {
.setSCMConfigurator(configurator)
.setNumDatanodes(NUM_DATANODES)
.setDatanodeFactory(UniformDatanodesFactory.newBuilder()
-
.setLayoutVersion(HDDSLayoutFeature.INITIAL_VERSION.layoutVersion())
+ .setApparentVersion(HDDSLayoutFeature.INITIAL_VERSION.serialize())
.build());
this.cluster = clusterBuilder.build();
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
index c024bf3ebb9..3c152f1dd15 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
@@ -59,7 +59,7 @@ public void init(OzoneConfiguration conf, int
numInactiveSCMs) throws Exception
SCMConfigurator configurator = new SCMConfigurator();
- conf.setInt(SCMStorageConfig.TESTING_INIT_LAYOUT_VERSION_KEY,
HDDSLayoutFeature.INITIAL_VERSION.layoutVersion());
+ conf.setInt(SCMStorageConfig.TESTING_INIT_APPARENT_VERSION_KEY,
HDDSLayoutFeature.INITIAL_VERSION.serialize());
conf.set(ScmConfigKeys.OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT,
"5s");
conf.set(ScmConfigKeys.OZONE_SCM_PIPELINE_CREATION_INTERVAL_DEFAULT, "1s");
@@ -71,7 +71,7 @@ public void init(OzoneConfiguration conf, int
numInactiveSCMs) throws Exception
.setSCMConfigurator(configurator)
.setNumDatanodes(NUM_DATANODES)
.setDatanodeFactory(UniformDatanodesFactory.newBuilder()
-
.setLayoutVersion(HDDSLayoutFeature.INITIAL_VERSION.layoutVersion())
+ .setApparentVersion(HDDSLayoutFeature.INITIAL_VERSION.serialize())
.build());
this.cluster = clusterBuilder.build();
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOMUpgradeFinalization.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOMUpgradeFinalization.java
index 03f1786415c..35c4ce3aafe 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOMUpgradeFinalization.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOMUpgradeFinalization.java
@@ -72,7 +72,7 @@ public static void shutdown() {
@Test
void testOMUpgradeFinalizationWithOneOMDown() throws Exception {
OzoneConfiguration conf = new OzoneConfiguration();
- conf.setInt(OMStorage.TESTING_INIT_APPARENT_VERSION_KEY,
INITIAL_VERSION.layoutVersion());
+ conf.setInt(OMStorage.TESTING_INIT_APPARENT_VERSION_KEY,
INITIAL_VERSION.serialize());
conf.set(OMConfigKeys.OZONE_OM_UPGRADE_FINALIZATION_CHECK_INTERVAL,
"10ms");
try (MiniOzoneHAClusterImpl cluster = newCluster(conf)) {
cluster.waitForClusterToBeReady();
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOmStartupInvalidApparentVersion.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOmStartupInvalidApparentVersion.java
index 519421413a0..65e86fbd03d 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOmStartupInvalidApparentVersion.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOmStartupInvalidApparentVersion.java
@@ -48,7 +48,7 @@ public class TestOmStartupInvalidApparentVersion {
@Test
public void
testStartupFailsWhenApparentVersionBetweenLastLayoutFeatureAndZdu()
throws Exception {
-
assertStartupFailsWithComponentVersionMessage(OMLayoutFeature.SNAPSHOT_DEFRAG.layoutVersion()
+ 1);
+
assertStartupFailsWithComponentVersionMessage(OMLayoutFeature.SNAPSHOT_DEFRAG.serialize()
+ 1);
}
@Test
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
index 4fdd713a77d..654cb7ca671 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
@@ -72,7 +72,7 @@ public static void initClusterProvider() throws Exception {
conf.setBoolean(
OMMultiTenantManagerImpl.OZONE_OM_TENANT_DEV_SKIP_RANGER, true);
conf.setBoolean(OZONE_OM_MULTITENANCY_ENABLED, true);
- conf.setInt(OMStorage.TESTING_INIT_APPARENT_VERSION_KEY,
OMLayoutFeature.INITIAL_VERSION.layoutVersion());
+ conf.setInt(OMStorage.TESTING_INIT_APPARENT_VERSION_KEY,
OMLayoutFeature.INITIAL_VERSION.serialize());
conf.set(OMConfigKeys.OZONE_OM_UPGRADE_FINALIZATION_CHECK_INTERVAL,
"10ms");
MiniOzoneCluster.Builder builder = MiniOzoneCluster.newBuilder(conf)
.withoutDatanodes();
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/service/TestBlockDeletionService.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/service/TestBlockDeletionService.java
index 257260f4622..482662c9df8 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/service/TestBlockDeletionService.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/service/TestBlockDeletionService.java
@@ -88,12 +88,12 @@ public static Stream<Arguments> replicationConfigProvider()
{
public static void init() throws Exception {
OzoneConfiguration conf = new OzoneConfiguration();
conf.setTimeDuration(OZONE_BLOCK_DELETING_SERVICE_INTERVAL, 500,
TimeUnit.MILLISECONDS);
- conf.setInt(SCMStorageConfig.TESTING_INIT_LAYOUT_VERSION_KEY,
HBASE_SUPPORT.layoutVersion());
+ conf.setInt(SCMStorageConfig.TESTING_INIT_APPARENT_VERSION_KEY,
HBASE_SUPPORT.serialize());
cluster = MiniOzoneCluster.newBuilder(conf)
.setNumDatanodes(9)
.setDatanodeFactory(UniformDatanodesFactory.newBuilder()
- .setLayoutVersion(HBASE_SUPPORT.layoutVersion()).build())
+ .setApparentVersion(HBASE_SUPPORT.serialize()).build())
.build();
cluster.waitForClusterToBeReady();
scmClient = cluster.getStorageContainerLocationClient();
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/snapshot/TestOmSnapshot.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/snapshot/TestOmSnapshot.java
index 7a97d2c28c2..2515117f423 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/snapshot/TestOmSnapshot.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/snapshot/TestOmSnapshot.java
@@ -231,7 +231,7 @@ private void init() throws Exception {
conf.setEnum(HDDS_DB_PROFILE, DBProfile.TEST);
// Enable filesystem snapshot feature for the test regardless of the
default
conf.setBoolean(OMConfigKeys.OZONE_FILESYSTEM_SNAPSHOT_ENABLED_KEY, true);
- conf.setInt(OMStorage.TESTING_INIT_APPARENT_VERSION_KEY,
OMLayoutFeature.BUCKET_LAYOUT_SUPPORT.layoutVersion());
+ conf.setInt(OMStorage.TESTING_INIT_APPARENT_VERSION_KEY,
OMLayoutFeature.BUCKET_LAYOUT_SUPPORT.serialize());
conf.set(OMConfigKeys.OZONE_OM_UPGRADE_FINALIZATION_CHECK_INTERVAL,
"10ms");
conf.setTimeDuration(OZONE_SNAPSHOT_DELETING_SERVICE_INTERVAL, 1,
TimeUnit.SECONDS);
conf.setInt(OZONE_SNAPSHOT_SST_FILTERING_SERVICE_INTERVAL, -1);
diff --git
a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
index c77f087671b..9132c3d7e62 100644
---
a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
+++
b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
@@ -25,7 +25,6 @@
import static
org.apache.hadoop.hdds.scm.ScmConfigKeys.HDDS_DATANODE_DIR_DU_RESERVED;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.HDDS_DATANODE_DIR_KEY;
import static
org.apache.hadoop.ozone.HddsDatanodeService.TESTING_DATANODE_VERSION_CURRENT;
-import static
org.apache.hadoop.ozone.HddsDatanodeService.TESTING_DATANODE_VERSION_INITIAL;
import static org.apache.hadoop.ozone.OzoneConfigKeys.HDDS_CONTAINER_IPC_PORT;
import static
org.apache.hadoop.ozone.OzoneConfigKeys.HDDS_CONTAINER_RATIS_ADMIN_PORT;
import static
org.apache.hadoop.ozone.OzoneConfigKeys.HDDS_CONTAINER_RATIS_DATANODE_STORAGE_DIR;
@@ -60,16 +59,14 @@ public class UniformDatanodesFactory implements
MiniOzoneCluster.DatanodeFactory
private final int numDataVolumes;
private final String reservedSpace;
- private final Integer layoutVersion;
- private final HDDSVersion initialVersion;
+ private final Integer apparentVersion;
private final HDDSVersion currentVersion;
protected UniformDatanodesFactory(Builder builder) {
numDataVolumes = builder.numDataVolumes;
- layoutVersion = builder.layoutVersion;
+ apparentVersion = builder.apparentVersion;
reservedSpace = builder.reservedSpace;
currentVersion = builder.currentVersion;
- initialVersion = builder.initialVersion != null ? builder.initialVersion :
builder.currentVersion;
}
@Override
@@ -104,15 +101,12 @@ public OzoneConfiguration apply(OzoneConfiguration conf)
throws IOException {
Files.createDirectories(ratisDir);
dnConf.set(HDDS_CONTAINER_RATIS_DATANODE_STORAGE_DIR, ratisDir.toString());
- if (layoutVersion != null) {
+ if (apparentVersion != null) {
DatanodeStorage layoutStorage = new DatanodeStorage(
- dnConf, UUID.randomUUID().toString(), layoutVersion);
+ dnConf, UUID.randomUUID().toString(), apparentVersion);
layoutStorage.initialize();
}
- if (initialVersion != null) {
- dnConf.setInt(TESTING_DATANODE_VERSION_INITIAL,
initialVersion.serialize());
- }
if (currentVersion != null) {
dnConf.setInt(TESTING_DATANODE_VERSION_CURRENT,
currentVersion.serialize());
}
@@ -144,8 +138,7 @@ public static class Builder {
private int numDataVolumes = 1;
private String reservedSpace;
- private Integer layoutVersion;
- private HDDSVersion initialVersion;
+ private Integer apparentVersion;
private HDDSVersion currentVersion;
/**
@@ -169,13 +162,8 @@ public Builder setReservedSpace(String reservedSpace) {
return this;
}
- public Builder setLayoutVersion(int layoutVersion) {
- this.layoutVersion = layoutVersion;
- return this;
- }
-
- public Builder setInitialVersion(HDDSVersion version) {
- this.initialVersion = version;
+ public Builder setApparentVersion(int apparentVersion) {
+ this.apparentVersion = apparentVersion;
return this;
}
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/upgrade/OMLayoutFeature.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/upgrade/OMLayoutFeature.java
index 9194791ce59..346b6524f60 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/upgrade/OMLayoutFeature.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/upgrade/OMLayoutFeature.java
@@ -25,14 +25,13 @@
import java.util.TreeMap;
import org.apache.hadoop.hdds.ComponentVersion;
import org.apache.hadoop.ozone.OzoneManagerVersion;
-import org.apache.hadoop.ozone.upgrade.LayoutFeature;
/**
* List of OM Layout Features. All version management has been migrated to
{@link OzoneManagerVersion} and no new
* additions should be made to this class. Existing versions are kept here for
backwards compatibility when upgrading
* to this version from older versions.
*/
-public enum OMLayoutFeature implements LayoutFeature {
+public enum OMLayoutFeature implements ComponentVersion {
////////////////////////////// //////////////////////////////
INITIAL_VERSION(0, "Initial Layout Version"),
@@ -72,7 +71,7 @@ public enum OMLayoutFeature implements LayoutFeature {
}
@Override
- public int layoutVersion() {
+ public int serialize() {
return layoutVersion;
}
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/upgrade/OMLayoutFeatureAspect.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/upgrade/OMLayoutFeatureAspect.java
index d17cfe2d1f6..479d47c31e6 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/upgrade/OMLayoutFeatureAspect.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/upgrade/OMLayoutFeatureAspect.java
@@ -20,11 +20,11 @@
import static
org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.NOT_SUPPORTED_OPERATION_PRIOR_FINALIZATION;
import java.io.IOException;
+import org.apache.hadoop.hdds.ComponentVersion;
import org.apache.hadoop.ozone.om.OzoneManager;
import org.apache.hadoop.ozone.om.exceptions.OMException;
import org.apache.hadoop.ozone.om.request.OMClientRequest;
import org.apache.hadoop.ozone.protocolPB.OzoneManagerRequestHandler;
-import org.apache.hadoop.ozone.upgrade.LayoutFeature;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
@@ -40,7 +40,7 @@ public class OMLayoutFeatureAspect {
@Before("@annotation(DisallowedUntilLayoutVersion) && execution(* *(..))")
public void checkLayoutFeature(JoinPoint joinPoint) throws IOException {
- LayoutFeature layoutFeature = ((MethodSignature) joinPoint.getSignature())
+ ComponentVersion layoutFeature = ((MethodSignature)
joinPoint.getSignature())
.getMethod().getAnnotation(DisallowedUntilLayoutVersion.class)
.value();
OMVersionManager versionManager = null;
@@ -66,7 +66,7 @@ public void checkLayoutFeature(JoinPoint joinPoint) throws
IOException {
private void checkIsAllowed(String operationName,
OMVersionManager omVersionManager,
- LayoutFeature layoutFeature) throws OMException {
+ ComponentVersion layoutFeature) throws
OMException {
if (!omVersionManager.isAllowed(layoutFeature)) {
throw new OMException(String.format("Operation %s cannot be invoked " +
"before finalization. It belongs to version %s. Current apparent
version is %s",
diff --git
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/upgrade/TestOMLayoutFeature.java
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/upgrade/TestOMLayoutFeature.java
index 6f16cb2726e..e27bba5aadd 100644
---
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/upgrade/TestOMLayoutFeature.java
+++
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/upgrade/TestOMLayoutFeature.java
@@ -37,9 +37,9 @@ public void testOMLayoutFeaturesHaveIncreasingLayoutVersion()
{
for (OMLayoutFeature lf : values) {
// This will skip the jump from the last OMLayoutFeature to
OzoneManagerVersion#ZDU,
// since that is expected to be a larger version increment.
- assertEquals(currVersion + 1, lf.layoutVersion(),
+ assertEquals(currVersion + 1, lf.serialize(),
"Expected monotonically increasing layout version for " + lf);
- currVersion = lf.layoutVersion();
+ currVersion = lf.serialize();
}
}
@@ -52,7 +52,7 @@ public void testNoNewOMLayoutFeaturesAdded() {
OMLayoutFeature lastFeature = OMLayoutFeature.values()[numOMLayoutFeatures
- 1];
assertEquals(10, numOMLayoutFeatures);
assertEquals(OMLayoutFeature.SNAPSHOT_DEFRAG, lastFeature);
- assertEquals(9, lastFeature.layoutVersion());
+ assertEquals(9, lastFeature.serialize());
}
@Test
@@ -87,7 +87,7 @@ public void testDeserializeUnknownVersionReturnsNull() {
public void testIsSupportedByFeatureBoundary() {
for (OMLayoutFeature feature : OMLayoutFeature.values()) {
// A layout feature should support itself.
- int layoutVersion = feature.layoutVersion();
+ int layoutVersion = feature.serialize();
assertSupportedBy(feature, feature);
if (layoutVersion > 0) {
// A layout feature should not be supported by older features.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]