diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ha/SCMHAUtils.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ha/SCMHAUtils.java index 2222bd035ac2..c4aa7300af6c 100644 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ha/SCMHAUtils.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ha/SCMHAUtils.java @@ -22,7 +22,6 @@ import static org.apache.hadoop.hdds.scm.ScmConfigKeys.OZONE_SCM_SERVICE_IDS_KEY; import static org.apache.hadoop.ozone.OzoneConsts.OZONE_RATIS_SNAPSHOT_DIR; -import com.google.common.base.Preconditions; import com.google.common.base.Strings; import com.google.common.collect.ImmutableList; import java.io.File; @@ -83,24 +82,12 @@ private SCMHAUtils() { // not used } - // This will be removed in follow-up Jira. Ref. HDDS-11754 - private static boolean isRatisEnabled = true; - public static boolean isSCMHAEnabled(ConfigurationSource conf) { - return isRatisEnabled; - } - - public static void setRatisEnabled(boolean value) { - isRatisEnabled = value; - } - public static String getPrimordialSCM(ConfigurationSource conf) { return conf.get(ScmConfigKeys.OZONE_SCM_PRIMORDIAL_NODE_ID_KEY); } public static boolean isPrimordialSCM(ConfigurationSource conf, String selfNodeId, String hostName) { - // This should only be called if SCM HA is enabled. - Preconditions.checkArgument(isSCMHAEnabled(conf)); String primordialNode = getPrimordialSCM(conf); return primordialNode != null && (primordialNode .equals(selfNodeId) || primordialNode.equals(hostName)); diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/utils/StorageVolumeUtil.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/utils/StorageVolumeUtil.java index 6237726e3a27..5e6fe086a165 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/utils/StorageVolumeUtil.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/utils/StorageVolumeUtil.java @@ -221,10 +221,6 @@ public static boolean checkVolume(StorageVolume volume, String scmId, } else if (rootFiles.length == 1) { // The one file is the version file. // DN started for first time or this is a newly added volume. - // Either the SCM ID or cluster ID will be used in naming the - // volume's working directory, depending on the datanode's layout version. - workingDirName = VersionedDatanodeFeatures.ScmHA - .chooseContainerPathID(conf, scmId, clusterId); try { volume.createWorkingDir(workingDirName, dbVolumeSet); } catch (IOException e) { diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/upgrade/VersionedDatanodeFeatures.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/upgrade/VersionedDatanodeFeatures.java index 933dec0b65af..ffd038afdcc2 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/upgrade/VersionedDatanodeFeatures.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/upgrade/VersionedDatanodeFeatures.java @@ -20,7 +20,6 @@ import java.io.File; import java.io.IOException; import org.apache.hadoop.hdds.conf.ConfigurationSource; -import org.apache.hadoop.hdds.scm.ha.SCMHAUtils; import org.apache.hadoop.hdds.upgrade.HDDSLayoutFeature; import org.apache.hadoop.hdds.upgrade.HDDSLayoutVersionManager; import org.apache.hadoop.ozone.OzoneConsts; @@ -110,20 +109,6 @@ public static String chooseContainerPathID(StorageVolume volume, } } - /** - * Choose whether to use SCM ID or cluster ID based on SCM HA - * finalization status and SCM HA configuration. - */ - public static String chooseContainerPathID(ConfigurationSource conf, - String scmID, String clusterID) { - boolean scmHAEnabled = SCMHAUtils.isSCMHAEnabled(conf); - if (isFinalized(HDDSLayoutFeature.SCM_HA) || scmHAEnabled) { - return clusterID; - } else { - return scmID; - } - } - public static boolean upgradeVolumeIfNeeded(StorageVolume volume, String clusterID) { File clusterIDDir = new File(volume.getStorageDir(), clusterID); diff --git a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HAUtils.java b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HAUtils.java index e85f44078da0..6d6a0e04bde1 100644 --- a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HAUtils.java +++ b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HAUtils.java @@ -45,7 +45,6 @@ import org.apache.hadoop.hdds.HddsConfigKeys; import org.apache.hadoop.hdds.conf.ConfigurationSource; import org.apache.hadoop.hdds.conf.OzoneConfiguration; -import org.apache.hadoop.hdds.protocol.proto.SCMSecurityProtocolProtos.SCMGetCertResponseProto; import org.apache.hadoop.hdds.protocolPB.SCMSecurityProtocolClientSideTranslatorPB; import org.apache.hadoop.hdds.scm.AddSCMRequest; import org.apache.hadoop.hdds.scm.ScmInfo; @@ -422,26 +421,13 @@ public static List buildCAX509List(ConfigurationSource conf) th Collection scmNodes = SCMHAUtils.getSCMNodeIds(conf); SCMSecurityProtocolClientSideTranslatorPB scmSecurityProtocolClient = HddsServerUtil.getScmSecurityClient(conf); - if (!SCMHAUtils.isSCMHAEnabled(conf)) { - List caCertPemList = new ArrayList<>(); - SCMGetCertResponseProto scmGetCertResponseProto = - scmSecurityProtocolClient.getCACert(); - if (scmGetCertResponseProto.hasX509Certificate()) { - caCertPemList.add(scmGetCertResponseProto.getX509Certificate()); - } - if (scmGetCertResponseProto.hasX509RootCACertificate()) { - caCertPemList.add(scmGetCertResponseProto.getX509RootCACertificate()); - } - return OzoneSecurityUtil.convertToX509(caCertPemList); + int expectedCount = scmNodes.size() + 1; + if (scmNodes.size() > 1) { + return OzoneSecurityUtil.convertToX509(getCAListWithRetry(() -> waitForCACerts( + scmSecurityProtocolClient::listCACertificate, + expectedCount), waitDuration)); } else { - int expectedCount = scmNodes.size() + 1; - if (scmNodes.size() > 1) { - return OzoneSecurityUtil.convertToX509(getCAListWithRetry(() -> waitForCACerts( - scmSecurityProtocolClient::listCACertificate, - expectedCount), waitDuration)); - } else { - return OzoneSecurityUtil.convertToX509(scmSecurityProtocolClient.listCACertificate()); - } + return OzoneSecurityUtil.convertToX509(scmSecurityProtocolClient.listCACertificate()); } } diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/block/DeletedBlockLogStateManagerImpl.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/block/DeletedBlockLogStateManagerImpl.java index b0b686ddab63..1c5619d1fff5 100644 --- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/block/DeletedBlockLogStateManagerImpl.java +++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/block/DeletedBlockLogStateManagerImpl.java @@ -33,7 +33,6 @@ import org.apache.hadoop.hdds.scm.container.ContainerID; import org.apache.hadoop.hdds.scm.container.ContainerManager; import org.apache.hadoop.hdds.scm.ha.SCMHAInvocationHandler; -import org.apache.hadoop.hdds.scm.ha.SCMHAUtils; import org.apache.hadoop.hdds.scm.ha.SCMRatisServer; import org.apache.hadoop.hdds.scm.metadata.DBTransactionBuffer; import org.apache.hadoop.hdds.utils.db.Table; @@ -64,10 +63,8 @@ public DeletedBlockLogStateManagerImpl(ConfigurationSource conf, this.deletedTable = deletedTable; this.containerManager = containerManager; this.transactionBuffer = txBuffer; - final boolean isRatisEnabled = SCMHAUtils.isSCMHAEnabled(conf); - this.deletingTxIDs = isRatisEnabled ? ConcurrentHashMap.newKeySet() : null; - this.skippingRetryTxIDs = - isRatisEnabled ? ConcurrentHashMap.newKeySet() : null; + this.deletingTxIDs = ConcurrentHashMap.newKeySet(); + this.skippingRetryTxIDs = ConcurrentHashMap.newKeySet(); } public TableIterator - Ratis SCM -> Non Ratis SCM is not supported. - This value is validated with the config provided. - **/ - private static void validateSCMHAConfig(SCMStorageConfig scmStorageConfig, - OzoneConfiguration conf) { - Storage.StorageState state = scmStorageConfig.getState(); - boolean scmHAEnableDefault = state == Storage.StorageState.INITIALIZED - ? scmStorageConfig.isSCMHAEnabled() - : SCMHAUtils.isSCMHAEnabled(conf); - // If we have an initialized cluster, use the value from VERSION file. - SCMHAUtils.setRatisEnabled(scmHAEnableDefault); - } - public static SCMHANodeDetails loadSCMHAConfig(OzoneConfiguration conf, SCMStorageConfig storageConfig) throws IOException { @@ -177,7 +159,6 @@ public static SCMHANodeDetails loadSCMHAConfig(OzoneConfiguration conf, ScmConfigKeys.OZONE_SCM_DEFAULT_SERVICE_ID); LOG.info("ServiceID for StorageContainerManager is {}", localScmServiceId); - validateSCMHAConfig(storageConfig, conf); if (localScmServiceId == null) { // There is no internal scm service id is being set, fall back to ozone // .scm.service.ids. diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/SCMClientProtocolServer.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/SCMClientProtocolServer.java index 6ac7964af256..e950b1de2dbc 100644 --- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/SCMClientProtocolServer.java +++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/SCMClientProtocolServer.java @@ -86,7 +86,6 @@ import org.apache.hadoop.hdds.scm.events.SCMEvents; import org.apache.hadoop.hdds.scm.exceptions.SCMException; import org.apache.hadoop.hdds.scm.exceptions.SCMException.ResultCodes; -import org.apache.hadoop.hdds.scm.ha.SCMHAUtils; import org.apache.hadoop.hdds.scm.ha.SCMRatisServer; import org.apache.hadoop.hdds.scm.ha.SCMRatisServerImpl; import org.apache.hadoop.hdds.scm.node.DatanodeUsageInfo; @@ -847,10 +846,6 @@ public ScmInfo getScmInfo() { public void transferLeadership(String newLeaderId) throws IOException { getScm().checkAdminAccess(getRemoteUser(), false); - if (!SCMHAUtils.isSCMHAEnabled(getScm().getConfiguration())) { - throw new SCMException("SCM HA not enabled.", ResultCodes.INTERNAL_ERROR); - } - checkIfCertSignRequestAllowed(scm.getRootCARotationManager(), false, config, "transferLeadership"); diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/StorageContainerManager.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/StorageContainerManager.java index 106cf898799f..6cf267803f50 100644 --- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/StorageContainerManager.java +++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/server/StorageContainerManager.java @@ -18,7 +18,6 @@ package org.apache.hadoop.hdds.scm.server; import static org.apache.hadoop.hdds.HddsUtils.preserveThreadName; -import static org.apache.hadoop.hdds.ratis.RatisHelper.newJvmPauseMonitor; import static org.apache.hadoop.hdds.scm.ScmConfigKeys.OZONE_SCM_EVENT_REPORT_EXEC_WAIT_THRESHOLD_DEFAULT; import static org.apache.hadoop.hdds.scm.ScmConfigKeys.OZONE_SCM_EVENT_REPORT_QUEUE_WAIT_THRESHOLD_DEFAULT; import static org.apache.hadoop.hdds.scm.ScmUtils.checkIfCertSignRequestAllowed; @@ -198,7 +197,6 @@ import org.apache.ratis.protocol.RaftPeerId; import org.apache.ratis.server.RaftServer; import org.apache.ratis.util.ExitUtils; -import org.apache.ratis.util.JvmPauseMonitor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -284,7 +282,6 @@ public final class StorageContainerManager extends ServiceRuntimeInfoImpl private RootCARotationManager rootCARotationManager; private ContainerTokenSecretManager containerTokenMgr; - private final JvmPauseMonitor jvmPauseMonitor; private final OzoneConfiguration configuration; private SCMContainerMetrics scmContainerMetrics; private SCMContainerPlacementMetrics placementMetrics; @@ -362,15 +359,12 @@ private StorageContainerManager(OzoneConfiguration conf, initMetrics(); initPerfMetrics(); - boolean ratisEnabled = SCMHAUtils.isSCMHAEnabled(conf); if (scmStorageConfig.getState() != StorageState.INITIALIZED) { String errMsg = "Please make sure you have run 'ozone scm --init' " + "command to generate all the required metadata to " + - scmStorageConfig.getStorageDir(); - if (ratisEnabled && !scmStorageConfig.isSCMHAEnabled()) { - errMsg += " or make sure you have run 'ozone scm --bootstrap' cmd to " - + "add the SCM to existing SCM HA group"; - } + scmStorageConfig.getStorageDir() + + " or make sure you have run 'ozone scm --bootstrap' cmd to " + + "add the SCM to existing SCM HA group"; LOG.error(errMsg + "."); throw new SCMException("SCM not initialized due to storage config " + "failure.", ResultCodes.SCM_NOT_INITIALIZED); @@ -387,8 +381,6 @@ private StorageContainerManager(OzoneConfiguration conf, threadNamePrefix = getScmNodeDetails().threadNamePrefix(); primaryScmNodeId = scmStorageConfig.getPrimaryScmNodeId(); - jvmPauseMonitor = !ratisEnabled ? newJvmPauseMonitor(getScmId()) : null; - /* * Important : This initialization sequence is assumed by some of our tests. * The testSecureOzoneCluster assumes that security checks have to be @@ -417,9 +409,6 @@ private StorageContainerManager(OzoneConfiguration conf, if (isSecretKeyEnable(securityConfig)) { secretKeyManagerService = new SecretKeyManagerService(scmContext, conf, scmHAManager.getRatisServer()); - if (!ratisEnabled) { - secretKeyManagerService.getSecretKeyManager().checkAndInitialize(); - } serviceManager.register(secretKeyManagerService); } else { secretKeyManagerService = null; @@ -706,13 +695,10 @@ private void initializeSystemManagers(OzoneConfiguration conf, if (configurator.getScmContext() != null) { scmContext = configurator.getScmContext(); } else { - // When term equals SCMContext.INVALID_TERM, the isLeader() check - // and getTermOfLeader() will always pass. - long term = SCMHAUtils.isSCMHAEnabled(conf) ? 0 : SCMContext.INVALID_TERM; // non-leader of term 0, in safe mode, preCheck not completed. scmContext = new SCMContext.Builder() .setLeader(false) - .setTerm(term) + .setTerm(0) .setIsInSafeMode(true) .setIsPreCheckComplete(false) .setSCM(this) @@ -1137,10 +1123,6 @@ public static RPC.Server startRpcServer( */ public static boolean scmBootstrap(OzoneConfiguration conf) throws AuthenticationException, IOException { - if (!SCMHAUtils.isSCMHAEnabled(conf)) { - LOG.error("Bootstrap is not supported without SCM HA."); - return false; - } String primordialSCM = SCMHAUtils.getPrimordialSCM(conf); SCMStorageConfig scmStorageConfig = new SCMStorageConfig(conf); SCMHANodeDetails scmhaNodeDetails = SCMHANodeDetails.loadSCMHAConfig(conf, @@ -1148,11 +1130,9 @@ public static boolean scmBootstrap(OzoneConfiguration conf) String selfNodeId = scmhaNodeDetails.getLocalNodeDetails().getNodeId(); final String selfHostName = scmhaNodeDetails.getLocalNodeDetails().getHostName(); - if (primordialSCM != null && SCMHAUtils.isSCMHAEnabled(conf) - && SCMHAUtils.isPrimordialSCM(conf, selfNodeId, selfHostName)) { - LOG.info( - "SCM bootstrap command can only be executed in non-Primordial SCM " - + "{}, self id {} " + "Ignoring it.", primordialSCM, selfNodeId); + if (primordialSCM != null && SCMHAUtils.isPrimordialSCM(conf, selfNodeId, selfHostName)) { + LOG.info("SCM bootstrap command can only be executed in non-Primordial SCM " + + "{}, self id {} " + "Ignoring it.", primordialSCM, selfNodeId); return true; } @@ -1316,7 +1296,6 @@ public static boolean scmInit(OzoneConfiguration conf, * to the bootstrapping SCMs later. */ try { - SCMHAUtils.setRatisEnabled(true); StorageContainerManager scm = createSCM(conf); scm.start(); scm.getScmHAManager().getRatisServer().triggerSnapshot(); @@ -1558,10 +1537,6 @@ public void start() throws IOException { scmBlockManager.start(); leaseManager.start(); - if (jvmPauseMonitor != null) { - jvmPauseMonitor.start(); - } - try { httpServer = new StorageContainerManagerHttpServer(configuration, this); httpServer.start(); @@ -1572,8 +1547,7 @@ public void start() throws IOException { setStartTime(); - RaftPeerId leaderId = SCMHAUtils.isSCMHAEnabled(configuration) - ? getScmHAManager().getRatisServer().getLeaderId() : null; + RaftPeerId leaderId = getScmHAManager().getRatisServer().getLeaderId(); scmHAMetricsUpdate(Objects.toString(leaderId, null)); if (scmCertificateClient != null) { @@ -1716,10 +1690,6 @@ public void stop() { LOG.error("SCM Event Queue stop failed", ex); } - if (jvmPauseMonitor != null) { - jvmPauseMonitor.stop(); - } - try { LOG.info("Stopping SCM HA services."); scmHAManager.stop(); @@ -1920,15 +1890,9 @@ public RootCARotationManager getRootCARotationManager() { * @return - if the current scm is the leader and is ready. */ public boolean checkLeader() { - // For NON-HA setup, the node will always be the leader - if (!SCMHAUtils.isSCMHAEnabled(configuration)) { - return true; - } else { - // FOR HA setup, the node has to be the leader and ready to serve - // requests. - return getScmHAManager().getRatisServer().getDivision().getInfo() + // The node has to be the leader and ready to serve requests. + return getScmHAManager().getRatisServer().getDivision().getInfo() .isLeaderReady(); - } } private void checkAdminAccess(String op) throws IOException { @@ -2171,23 +2135,19 @@ private static List> getRatisRolesException(String exceptionString) */ @Override public String getPrimordialNode() { - if (SCMHAUtils.isSCMHAEnabled(configuration)) { - String primordialNode = SCMHAUtils.getPrimordialSCM(configuration); - // primordialNode can be nodeId too . If it is then return hostname. - if (SCMHAUtils.getSCMNodeIds(configuration).contains(primordialNode)) { - List localAndPeerNodes = - new ArrayList<>(scmHANodeDetails.getPeerNodeDetails()); - localAndPeerNodes.add(getSCMHANodeDetails().getLocalNodeDetails()); - for (SCMNodeDetails nodes : localAndPeerNodes) { - if (nodes.getNodeId().equals(primordialNode)) { - return nodes.getHostName(); - } + String primordialNode = SCMHAUtils.getPrimordialSCM(configuration); + // primordialNode can be nodeId too . If it is then return hostname. + if (SCMHAUtils.getSCMNodeIds(configuration).contains(primordialNode)) { + List localAndPeerNodes = + new ArrayList<>(scmHANodeDetails.getPeerNodeDetails()); + localAndPeerNodes.add(getSCMHANodeDetails().getLocalNodeDetails()); + for (SCMNodeDetails nodes : localAndPeerNodes) { + if (nodes.getNodeId().equals(primordialNode)) { + return nodes.getHostName(); } - } - return primordialNode; } - return null; + return primordialNode; } @Override diff --git a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/HddsTestUtils.java b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/HddsTestUtils.java index 1a91e37adfbd..9551ca63b4f4 100644 --- a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/HddsTestUtils.java +++ b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/HddsTestUtils.java @@ -58,7 +58,6 @@ import org.apache.hadoop.hdds.scm.container.ContainerReplica; import org.apache.hadoop.hdds.scm.ha.SCMContext; import org.apache.hadoop.hdds.scm.ha.SCMHAManagerStub; -import org.apache.hadoop.hdds.scm.ha.SCMHAUtils; import org.apache.hadoop.hdds.scm.node.SCMNodeManager; import org.apache.hadoop.hdds.scm.pipeline.Pipeline; import org.apache.hadoop.hdds.scm.pipeline.PipelineID; @@ -613,7 +612,7 @@ public static StorageContainerManager getScm(OzoneConfiguration conf, String scmId = UUID.randomUUID().toString(); scmStore.setClusterId(clusterId); scmStore.setScmId(scmId); - scmStore.setSCMHAFlag(SCMHAUtils.isSCMHAEnabled(conf)); + scmStore.setSCMHAFlag(true); // writes the version file properties scmStore.initialize(); } diff --git a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/ha/TestSCMConfiguration.java b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/ha/TestSCMConfiguration.java index 891ab3458b64..601cd8502c17 100644 --- a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/ha/TestSCMConfiguration.java +++ b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/ha/TestSCMConfiguration.java @@ -37,12 +37,10 @@ import static org.apache.hadoop.hdds.scm.ScmConfigKeys.OZONE_SCM_SECURITY_SERVICE_PORT_KEY; import static org.apache.hadoop.ozone.OzoneConfigKeys.OZONE_METADATA_DIRS; import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import java.io.File; -import java.io.IOException; import java.net.InetSocketAddress; import org.apache.hadoop.hdds.HddsConfigKeys; import org.apache.hadoop.hdds.conf.OzoneConfiguration; @@ -59,8 +57,6 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.io.TempDir; -import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.ValueSource; /** * Test for SCM HA-related configuration. @@ -292,21 +288,4 @@ public void testSamePortConfig() throws Exception { } - @ParameterizedTest - @ValueSource(booleans = {true, false}) - public void testDefaultConfigWithInitializedSCM(boolean isRatisEnabled) - throws IOException { - // The default config for RatisEnabled is true. - assertTrue(SCMHAUtils.isSCMHAEnabled(conf)); - - // If the cluster is already initalized, use the value from StorageConfig. - SCMStorageConfig scmStorageConfig = mock(SCMStorageConfig.class); - when(scmStorageConfig.getState()) - .thenReturn(Storage.StorageState.INITIALIZED); - when(scmStorageConfig.isSCMHAEnabled()).thenReturn(isRatisEnabled); - SCMHANodeDetails.loadSCMHAConfig(conf, scmStorageConfig); - - assertEquals(SCMHAUtils.isSCMHAEnabled(conf), - scmStorageConfig.isSCMHAEnabled()); - } } diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/TestStorageContainerManager.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/TestStorageContainerManager.java index 71f7a14ce836..56cc33cdafc0 100644 --- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/TestStorageContainerManager.java +++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/TestStorageContainerManager.java @@ -302,10 +302,8 @@ private void testBlockDeletionTransactions(MiniOzoneCluster cluster) throws Exce // eventually these TX will success. GenericTestUtils.waitFor(() -> { try { - if (SCMHAUtils.isSCMHAEnabled(cluster.getConf())) { - cluster.getStorageContainerManager().getScmHAManager() - .asSCMHADBTransactionBuffer().flush(); - } + cluster.getStorageContainerManager().getScmHAManager() + .asSCMHADBTransactionBuffer().flush(); return delLog.getFailedTransactions(-1, 0).size() == 0; } catch (IOException e) { return false; @@ -888,9 +886,7 @@ private void addTransactions(StorageContainerManager scm, Map> containerBlocksMap) throws IOException, TimeoutException { delLog.addTransactions(containerBlocksMap); - if (SCMHAUtils.isSCMHAEnabled(scm.getConfiguration())) { - scm.getScmHAManager().asSCMHADBTransactionBuffer().flush(); - } + scm.getScmHAManager().asSCMHADBTransactionBuffer().flush(); } public List getAllBlocks(MiniOzoneCluster cluster, Set containerIDs) throws IOException { diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/TestStorageContainerManagerHA.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/TestStorageContainerManagerHA.java index a339a86d19b0..ed3208212e0d 100644 --- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/TestStorageContainerManagerHA.java +++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/TestStorageContainerManagerHA.java @@ -23,7 +23,6 @@ import org.apache.hadoop.hdds.protocol.proto.HddsProtos; import org.apache.hadoop.hdds.scm.container.ContainerID; import org.apache.hadoop.hdds.scm.ha.SCMHAMetrics; -import org.apache.hadoop.hdds.scm.ha.SCMHAUtils; import org.apache.hadoop.hdds.scm.ha.SCMRatisServerImpl; import org.apache.hadoop.hdds.scm.server.SCMStorageConfig; import org.apache.hadoop.hdds.scm.server.StorageContainerManager; @@ -133,9 +132,7 @@ void testAllSCMAreRunning() throws Exception { count++; leaderScm = scm; } - if (SCMHAUtils.isSCMHAEnabled(conf)) { - assertNotNull(scm.getScmHAManager().getRatisServer().getLeaderId()); - } + assertNotNull(scm.getScmHAManager().getRatisServer().getLeaderId()); assertEquals(peerSize, numOfSCMs); } assertEquals(1, count); diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestSecureOzoneCluster.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestSecureOzoneCluster.java index 53d0d817e086..9ecf79fabac5 100644 --- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestSecureOzoneCluster.java +++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestSecureOzoneCluster.java @@ -53,7 +53,6 @@ import org.apache.hadoop.hdds.scm.client.ScmTopologyClient; import org.apache.hadoop.hdds.scm.ha.HASecurityUtils; import org.apache.hadoop.hdds.scm.ha.SCMHANodeDetails; -import org.apache.hadoop.hdds.scm.ha.SCMHAUtils; import org.apache.hadoop.hdds.scm.ha.SCMRatisServerImpl; import org.apache.hadoop.hdds.scm.protocol.ScmBlockLocationProtocol; import org.apache.hadoop.hdds.scm.protocol.StorageContainerLocationProtocol; @@ -458,11 +457,9 @@ private void initSCM() throws IOException { scmStore.setPrimaryScmNodeId(scmId); // writes the version file properties scmStore.initialize(); - if (SCMHAUtils.isSCMHAEnabled(conf)) { - SCMRatisServerImpl.initialize(clusterId, scmId, - SCMHANodeDetails.loadSCMHAConfig(conf, scmStore) - .getLocalNodeDetails(), conf); - } + SCMRatisServerImpl.initialize(clusterId, scmId, + SCMHANodeDetails.loadSCMHAConfig(conf, scmStore) + .getLocalNodeDetails(), conf); /* * As all these processes run inside the same JVM, there are issues around