diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml b/hadoop-hdds/common/src/main/resources/ozone-default.xml
index 08560ae0e56..c971aff6526 100644
--- a/hadoop-hdds/common/src/main/resources/ozone-default.xml
+++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml
@@ -3558,21 +3558,6 @@
-
- ozone.om.enable.filesystem.paths
- OZONE, OM
- false
- If true, key names will be interpreted as file system paths.
- "/" will be treated as a special character and paths will be normalized
- and must follow Unix filesystem path naming conventions. This flag will
- be helpful when objects created by S3G need to be accessed using OFS/O3Fs.
- If false, it will fallback to default behavior of Key/MPU create
- requests where key paths are not normalized and any intermediate
- directories will not be created or any file checks happens to check
- filesystem semantics.
-
-
-
ozone.om.key.path.lock.enabled
OZONE, OM
diff --git a/hadoop-ozone/cli-shell/src/main/java/org/apache/hadoop/ozone/shell/keys/DeleteKeyHandler.java b/hadoop-ozone/cli-shell/src/main/java/org/apache/hadoop/ozone/shell/keys/DeleteKeyHandler.java
index a67343976e7..39d94426d6e 100644
--- a/hadoop-ozone/cli-shell/src/main/java/org/apache/hadoop/ozone/shell/keys/DeleteKeyHandler.java
+++ b/hadoop-ozone/cli-shell/src/main/java/org/apache/hadoop/ozone/shell/keys/DeleteKeyHandler.java
@@ -24,6 +24,7 @@
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneKeyDetails;
import org.apache.hadoop.ozone.client.OzoneVolume;
+import org.apache.hadoop.ozone.om.OmConfig;
import org.apache.hadoop.ozone.om.exceptions.OMException;
import org.apache.hadoop.ozone.om.helpers.OzoneFileStatus;
import org.apache.hadoop.ozone.shell.OzoneAddress;
@@ -40,8 +41,6 @@
import static org.apache.hadoop.fs.CommonConfigurationKeysPublic.FS_TRASH_INTERVAL_KEY;
import static org.apache.hadoop.fs.FileSystem.TRASH_PREFIX;
import static org.apache.hadoop.ozone.OzoneConsts.OZONE_URI_DELIMITER;
-import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS;
-import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT;
/**
* Executes Delete Key.
@@ -70,7 +69,7 @@ protected void execute(OzoneClient client, OzoneAddress address)
}
if (bucket.getBucketLayout().isLegacy() && keyName.endsWith(OZONE_URI_DELIMITER)
- && (getConf().getBoolean(OZONE_OM_ENABLE_FILESYSTEM_PATHS, OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT))) {
+ && (getConf().getBoolean(OmConfig.Keys.ENABLE_FILESYSTEM_PATHS, OmConfig.Defaults.ENABLE_FILESYSTEM_PATHS))) {
out().printf("Use FS(ofs/o3fs) interface to delete legacy bucket directory %n");
return;
}
diff --git a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
index 51646f5b546..870093a0567 100644
--- a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
+++ b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
@@ -342,12 +342,12 @@ private OMConfigKeys() {
public static final boolean OZONE_OM_KEYNAME_CHARACTER_CHECK_ENABLED_DEFAULT =
false;
- // This config needs to be enabled, when S3G created objects used via
- // FileSystem API.
+ @Deprecated
public static final String OZONE_OM_ENABLE_FILESYSTEM_PATHS =
- "ozone.om.enable.filesystem.paths";
+ OmConfig.Keys.ENABLE_FILESYSTEM_PATHS;
+ @Deprecated
public static final boolean OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT =
- false;
+ OmConfig.Defaults.ENABLE_FILESYSTEM_PATHS;
public static final String OZONE_SERVER_DEFAULT_REPLICATION_KEY =
"ozone.server.default.replication";
diff --git a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OmConfig.java b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OmConfig.java
index efdcd5e9e4a..8c516a1caf2 100644
--- a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OmConfig.java
+++ b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OmConfig.java
@@ -28,6 +28,22 @@
@ConfigGroup(prefix = "ozone.om")
public class OmConfig {
+ /** This config needs to be enabled, when S3G created objects used via FileSystem API. */
+ @Config(
+ key = "enable.filesystem.paths",
+ defaultValue = "false",
+ description = "If true, key names will be interpreted as file system paths. " +
+ "'/' will be treated as a special character and paths will be normalized " +
+ "and must follow Unix filesystem path naming conventions. This flag will " +
+ "be helpful when objects created by S3G need to be accessed using OFS/O3Fs. " +
+ "If false, it will fallback to default behavior of Key/MPU create " +
+ "requests where key paths are not normalized and any intermediate " +
+ "directories will not be created or any file checks happens to check " +
+ "filesystem semantics.",
+ tags = { ConfigTag.OM, ConfigTag.OZONE }
+ )
+ private boolean fileSystemPathEnabled;
+
@Config(
key = "server.list.max.size",
defaultValue = "1000",
@@ -36,6 +52,14 @@ public class OmConfig {
)
private long maxListSize;
+ public boolean isFileSystemPathEnabled() {
+ return fileSystemPathEnabled;
+ }
+
+ public void setFileSystemPathEnabled(boolean newValue) {
+ fileSystemPathEnabled = newValue;
+ }
+
public long getMaxListSize() {
return maxListSize;
}
@@ -56,13 +80,15 @@ public void validate() {
* String keys for tests and grep.
*/
public static final class Keys {
+ public static final String ENABLE_FILESYSTEM_PATHS = "ozone.om.enable.filesystem.paths";
public static final String SERVER_LIST_MAX_SIZE = "ozone.om.server.list.max.size";
}
/**
* Default values for tests.
*/
- static final class Defaults {
+ public static final class Defaults {
+ public static final boolean ENABLE_FILESYSTEM_PATHS = false;
public static final long SERVER_LIST_MAX_SIZE = 1000;
}
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestOzoneConfigurationFields.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestOzoneConfigurationFields.java
index 6d415c0c153..2c6b3df43ac 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestOzoneConfigurationFields.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestOzoneConfigurationFields.java
@@ -94,6 +94,7 @@ private void addPropertiesNotInXml() {
OMConfigKeys.OZONE_FS_TRASH_CHECKPOINT_INTERVAL_KEY,
OMConfigKeys.OZONE_OM_S3_GPRC_SERVER_ENABLED,
OMConfigKeys.OZONE_OM_FEATURES_DISABLED,
+ OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS,
OzoneConfigKeys.OZONE_ACL_AUTHORIZER_CLASS_NATIVE,
OzoneConfigKeys.OZONE_CLIENT_REQUIRED_OM_VERSION_MIN_KEY,
OzoneConfigKeys.OZONE_RECOVERING_CONTAINER_SCRUBBING_SERVICE_WORKERS,
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/OzoneRpcClientTests.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/OzoneRpcClientTests.java
index a980fddd864..a4d1ae64822 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/OzoneRpcClientTests.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/OzoneRpcClientTests.java
@@ -112,7 +112,6 @@
import org.apache.hadoop.ozone.container.common.interfaces.DBHandle;
import org.apache.hadoop.ozone.container.keyvalue.KeyValueContainerData;
import org.apache.hadoop.ozone.container.keyvalue.helpers.BlockUtils;
-import org.apache.hadoop.ozone.om.OMConfigKeys;
import org.apache.hadoop.ozone.om.OMMetadataManager;
import org.apache.hadoop.ozone.om.OmFailoverProxyUtil;
import org.apache.hadoop.ozone.om.OzoneManager;
@@ -1741,8 +1740,7 @@ public void testMissingParentBucketUsedNamespace(BucketLayout layout)
OzoneBucket bucket = volume.getBucket(bucketName);
if (layout.equals(BucketLayout.LEGACY)) {
- OzoneConfiguration conf = cluster.getConf();
- conf.setBoolean(OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS, true);
+ cluster.getOzoneManager().getConfig().setFileSystemPathEnabled(true);
}
// the directory "/dir1", ""/dir1/dir2/", "/dir1/dir2/dir3/"
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestObjectStoreWithLegacyFS.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestObjectStoreWithLegacyFS.java
index 9c7a0a7032b..3115f2801f0 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestObjectStoreWithLegacyFS.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestObjectStoreWithLegacyFS.java
@@ -23,12 +23,10 @@
import org.apache.commons.lang3.RandomStringUtils;
import org.apache.commons.lang3.RandomUtils;
import org.apache.hadoop.hdds.client.RatisReplicationConfig;
-import org.apache.hadoop.hdds.conf.OzoneConfiguration;
import org.apache.hadoop.hdds.protocol.StorageType;
import org.apache.hadoop.hdds.protocol.proto.HddsProtos;
import org.apache.hadoop.hdds.utils.db.Table;
import org.apache.hadoop.hdds.utils.db.TableIterator;
-import org.apache.hadoop.ozone.MiniOzoneCluster;
import org.apache.hadoop.ozone.OzoneConsts;
import org.apache.hadoop.ozone.TestDataUtil;
import org.apache.hadoop.ozone.client.BucketArgs;
@@ -44,10 +42,12 @@
import org.apache.hadoop.ozone.om.helpers.OmMultipartUploadCompleteInfo;
import org.apache.ozone.test.GenericTestUtils;
+import org.apache.ozone.test.NonHATests;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.TestInstance;
import org.junit.jupiter.api.Timeout;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -68,11 +68,11 @@
/**
* Test verifies object store with OZONE_OM_ENABLE_FILESYSTEM_PATHS enabled.
*/
+@TestInstance(TestInstance.Lifecycle.PER_CLASS)
@Timeout(200)
-public class TestObjectStoreWithLegacyFS {
+public abstract class TestObjectStoreWithLegacyFS implements NonHATests.TestCase {
- private static MiniOzoneCluster cluster = null;
- private static OzoneClient client;
+ private OzoneClient client;
private String volumeName;
@@ -82,30 +82,22 @@ public class TestObjectStoreWithLegacyFS {
private static final Logger LOG =
LoggerFactory.getLogger(TestObjectStoreWithLegacyFS.class);
+ private boolean originalFileSystemPathEnabled;
@BeforeAll
- public static void initClass() throws Exception {
- OzoneConfiguration conf = new OzoneConfiguration();
-
- conf.setBoolean(OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS, true);
- conf.set(OMConfigKeys.OZONE_DEFAULT_BUCKET_LAYOUT,
- BucketLayout.LEGACY.name());
- cluster = MiniOzoneCluster.newBuilder(conf)
- .setNumDatanodes(3)
- .build();
- cluster.waitForClusterToBeReady();
- client = cluster.newClient();
+ void initClass() throws Exception {
+ OmConfig omConfig = cluster().getOzoneManager().getConfig();
+ originalFileSystemPathEnabled = omConfig.isFileSystemPathEnabled();
+ omConfig.setFileSystemPathEnabled(true);
+
+ client = cluster().newClient();
}
- /**
- * Shutdown MiniOzoneCluster.
- */
@AfterAll
- public static void shutdown() {
+ void cleanup() {
IOUtils.closeQuietly(client);
- if (cluster != null) {
- cluster.shutdown();
- }
+ OmConfig omConfig = cluster().getOzoneManager().getConfig();
+ omConfig.setFileSystemPathEnabled(originalFileSystemPathEnabled);
}
@BeforeEach
@@ -132,11 +124,11 @@ public void testFlatKeyStructureWithOBS() throws Exception {
.createKey("dir1/dir2/dir3/key-1", 0);
stream.close();
Table keyTable =
- cluster.getOzoneManager().getMetadataManager()
+ cluster().getOzoneManager().getMetadataManager()
.getKeyTable(BucketLayout.OBJECT_STORE);
String seekKey = "dir";
- String dbKey = cluster.getOzoneManager().getMetadataManager()
+ String dbKey = cluster().getOzoneManager().getMetadataManager()
.getOzoneKey(volumeName, bucketName, seekKey);
GenericTestUtils
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/ozone/test/NonHATests.java b/hadoop-ozone/integration-test/src/test/java/org/apache/ozone/test/NonHATests.java
index 1e02d43e7ef..022fe489ae7 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/ozone/test/NonHATests.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/ozone/test/NonHATests.java
@@ -170,6 +170,14 @@ public MiniOzoneCluster cluster() {
}
}
+ @Nested
+ class ObjectStoreWithLegacyFS extends org.apache.hadoop.ozone.om.TestObjectStoreWithLegacyFS {
+ @Override
+ public MiniOzoneCluster cluster() {
+ return getCluster();
+ }
+ }
+
@Nested
class OmBlockVersioning extends org.apache.hadoop.ozone.om.TestOmBlockVersioning {
@Override
diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java
index 735dfca5590..ced0abae16c 100644
--- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java
+++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java
@@ -192,7 +192,6 @@ public class KeyManagerImpl implements KeyManager {
private SnapshotDeletingService snapshotDeletingService;
private final KeyProviderCryptoExtension kmsProvider;
- private final boolean enableFileSystemPaths;
private DirectoryDeletingService dirDeletingService;
private final OMPerformanceMetrics metrics;
@@ -218,9 +217,6 @@ public KeyManagerImpl(OzoneManager om, ScmClient scmClient,
this.grpcBlockTokenEnabled = conf.getBoolean(
HDDS_BLOCK_TOKEN_ENABLED,
HDDS_BLOCK_TOKEN_ENABLED_DEFAULT);
- this.enableFileSystemPaths =
- conf.getBoolean(OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS,
- OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT);
this.ozoneManager = om;
this.scmClient = scmClient;
@@ -473,7 +469,7 @@ private OmKeyInfo readKeyInfo(OmKeyArgs args, BucketLayout bucketLayout)
bucketName);
try {
keyName = OMClientRequest
- .validateAndNormalizeKey(enableFileSystemPaths, keyName,
+ .validateAndNormalizeKey(ozoneManager.getEnableFileSystemPaths(), keyName,
bucketLayout);
if (bucketLayout.isFileSystemOptimized()) {
@@ -665,7 +661,7 @@ public ListKeysResult listKeys(String volumeName, String bucketName,
// underlying table using an iterator. That automatically creates a
// snapshot of the data, so we don't need these locks at a higher level
// when we iterate.
- if (bucketLayout.shouldNormalizePaths(enableFileSystemPaths)) {
+ if (bucketLayout.shouldNormalizePaths(ozoneManager.getEnableFileSystemPaths())) {
startKey = OmUtils.normalizeKey(startKey, true);
keyPrefix = OmUtils.normalizeKey(keyPrefix, true);
}
diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java
index 24d347703b2..d86c15e816b 100644
--- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java
+++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java
@@ -278,8 +278,6 @@
import static org.apache.hadoop.ozone.OzoneConsts.TRANSACTION_INFO_KEY;
import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_KEY_DELETING_LIMIT_PER_TASK;
import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ADDRESS_KEY;
-import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS;
-import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT;
import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_KEY_PATH_LOCK_ENABLED;
import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_KEY_PATH_LOCK_ENABLED_DEFAULT;
import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_HANDLER_COUNT_DEFAULT;
@@ -4467,8 +4465,7 @@ public void setExitManagerForTesting(ExitManager exitManagerForTesting) {
}
public boolean getEnableFileSystemPaths() {
- return configuration.getBoolean(OZONE_OM_ENABLE_FILESYSTEM_PATHS,
- OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT);
+ return config.isFileSystemPathEnabled();
}
public boolean getKeyPathLockEnabled() {
diff --git a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/api/handlers/BucketHandler.java b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/api/handlers/BucketHandler.java
index a2db616ec2f..a1ea88f20e1 100644
--- a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/api/handlers/BucketHandler.java
+++ b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/api/handlers/BucketHandler.java
@@ -21,7 +21,7 @@
import org.apache.hadoop.hdds.scm.container.ContainerManager;
import org.apache.hadoop.hdds.scm.server.OzoneStorageContainerManager;
import org.apache.hadoop.hdds.utils.db.Table;
-import org.apache.hadoop.ozone.om.OMConfigKeys;
+import org.apache.hadoop.ozone.om.OmConfig;
import org.apache.hadoop.ozone.om.helpers.OmDirectoryInfo;
import org.apache.hadoop.ozone.om.helpers.OmKeyInfo;
import org.apache.hadoop.ozone.om.helpers.OmBucketInfo;
@@ -211,8 +211,8 @@ private static boolean isEnableFileSystemPaths(ReconOMMetadataManager omMetadata
if (configuration == null) {
configuration = new OzoneConfiguration();
}
- return configuration.getBoolean(OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS,
- OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT);
+ return configuration.getBoolean(OmConfig.Keys.ENABLE_FILESYSTEM_PATHS,
+ OmConfig.Defaults.ENABLE_FILESYSTEM_PATHS);
}
public static BucketHandler getBucketHandler(
diff --git a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/tasks/NSSummaryTaskWithLegacy.java b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/tasks/NSSummaryTaskWithLegacy.java
index 121b280bf68..920d762a298 100644
--- a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/tasks/NSSummaryTaskWithLegacy.java
+++ b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/tasks/NSSummaryTaskWithLegacy.java
@@ -20,8 +20,8 @@
import org.apache.hadoop.hdds.conf.OzoneConfiguration;
import org.apache.hadoop.hdds.utils.db.Table;
import org.apache.hadoop.hdds.utils.db.TableIterator;
-import org.apache.hadoop.ozone.om.OMConfigKeys;
import org.apache.hadoop.ozone.om.OMMetadataManager;
+import org.apache.hadoop.ozone.om.OmConfig;
import org.apache.hadoop.ozone.om.helpers.OmDirectoryInfo;
import org.apache.hadoop.ozone.om.helpers.OmKeyInfo;
import org.apache.hadoop.ozone.om.helpers.OmBucketInfo;
@@ -64,8 +64,8 @@ public NSSummaryTaskWithLegacy(ReconNamespaceSummaryManager
reconOMMetadataManager, ozoneConfiguration);
// true if FileSystemPaths enabled
enableFileSystemPaths = ozoneConfiguration
- .getBoolean(OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS,
- OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT);
+ .getBoolean(OmConfig.Keys.ENABLE_FILESYSTEM_PATHS,
+ OmConfig.Defaults.ENABLE_FILESYSTEM_PATHS);
}
public boolean processWithLegacy(OMUpdateEventBatch events) {
diff --git a/hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpoint.java b/hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpoint.java
index 9311fb7fa4b..1aa5a8b7e63 100644
--- a/hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpoint.java
+++ b/hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpoint.java
@@ -60,6 +60,7 @@
import org.apache.hadoop.ozone.client.OzoneVolume;
import org.apache.hadoop.ozone.client.io.OzoneInputStream;
import org.apache.hadoop.ozone.client.io.OzoneOutputStream;
+import org.apache.hadoop.ozone.om.OmConfig;
import org.apache.hadoop.ozone.om.exceptions.OMException;
import org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes;
import org.apache.hadoop.ozone.om.helpers.BucketLayout;
@@ -113,7 +114,6 @@
import static org.apache.hadoop.ozone.OzoneConfigKeys.OZONE_REPLICATION_TYPE;
import static org.apache.hadoop.ozone.OzoneConfigKeys.OZONE_REPLICATION_TYPE_DEFAULT;
import static org.apache.hadoop.ozone.audit.AuditLogger.PerformanceStringBuilder;
-import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS;
import static org.apache.hadoop.ozone.s3.S3GatewayConfigKeys.OZONE_S3G_CLIENT_BUFFER_SIZE_DEFAULT;
import static org.apache.hadoop.ozone.s3.S3GatewayConfigKeys.OZONE_S3G_CLIENT_BUFFER_SIZE_KEY;
import static org.apache.hadoop.ozone.s3.S3GatewayConfigKeys.OZONE_S3G_FSO_DIRECTORY_CREATION_ENABLED;
@@ -360,7 +360,7 @@ public Response put(
OS3Exception os3Exception = newError(INVALID_REQUEST, keyPath, ex);
os3Exception.setErrorMessage("An error occurred (InvalidRequest) " +
"when calling the PutObject/MPU PartUpload operation: " +
- OZONE_OM_ENABLE_FILESYSTEM_PATHS + " is enabled Keys are" +
+ OmConfig.Keys.ENABLE_FILESYSTEM_PATHS + " is enabled Keys are" +
" considered as Unix Paths. Path has Violated FS Semantics " +
"which caused put operation to fail.");
throw os3Exception;
@@ -932,7 +932,7 @@ public Response completeMultipartUpload(@PathParam("bucket") String bucket,
OS3Exception os3Exception = newError(INVALID_REQUEST, key, ex);
os3Exception.setErrorMessage("An error occurred (InvalidRequest) " +
"when calling the CompleteMultipartUpload operation: " +
- OZONE_OM_ENABLE_FILESYSTEM_PATHS + " is enabled Keys are " +
+ OmConfig.Keys.ENABLE_FILESYSTEM_PATHS + " is enabled Keys are " +
"considered as Unix Paths. A directory already exists with a " +
"given KeyName caused failure for MPU");
throw os3Exception;
diff --git a/hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpointStreaming.java b/hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpointStreaming.java
index f5d185fc76b..86b77bee743 100644
--- a/hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpointStreaming.java
+++ b/hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpointStreaming.java
@@ -25,6 +25,7 @@
import org.apache.hadoop.ozone.client.OzoneBucket;
import org.apache.hadoop.ozone.client.io.KeyMetadataAware;
import org.apache.hadoop.ozone.client.io.OzoneDataStreamOutput;
+import org.apache.hadoop.ozone.om.OmConfig;
import org.apache.hadoop.ozone.om.exceptions.OMException;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.apache.hadoop.ozone.s3.exception.S3ErrorTable;
@@ -40,7 +41,6 @@
import java.util.Map;
import static org.apache.hadoop.ozone.audit.AuditLogger.PerformanceStringBuilder;
-import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS;
import static org.apache.hadoop.ozone.s3.exception.S3ErrorTable.INVALID_REQUEST;
import static org.apache.hadoop.ozone.s3.exception.S3ErrorTable.NO_SUCH_UPLOAD;
@@ -77,7 +77,7 @@ public static Pair put(
keyPath);
os3Exception.setErrorMessage("An error occurred (InvalidRequest) " +
"when calling the PutObject/MPU PartUpload operation: " +
- OZONE_OM_ENABLE_FILESYSTEM_PATHS + " is enabled Keys are" +
+ OmConfig.Keys.ENABLE_FILESYSTEM_PATHS + " is enabled Keys are" +
" considered as Unix Paths. Path has Violated FS Semantics " +
"which caused put operation to fail.");
throw os3Exception;
diff --git a/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/admin/nssummary/NSSummaryAdmin.java b/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/admin/nssummary/NSSummaryAdmin.java
index 9d051d61793..4edca825203 100644
--- a/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/admin/nssummary/NSSummaryAdmin.java
+++ b/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/admin/nssummary/NSSummaryAdmin.java
@@ -29,7 +29,7 @@
import org.apache.hadoop.ozone.client.OzoneBucket;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientFactory;
-import org.apache.hadoop.ozone.om.OMConfigKeys;
+import org.apache.hadoop.ozone.om.OmConfig;
import org.apache.hadoop.ozone.om.helpers.BucketLayout;
import org.kohsuke.MetaInfServices;
import picocli.CommandLine;
@@ -68,8 +68,8 @@ public class NSSummaryAdmin implements AdminSubcommand {
private boolean isObjectStoreBucket(OzoneBucket bucket, ObjectStore objectStore) {
boolean enableFileSystemPaths = getOzoneConfig()
- .getBoolean(OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS,
- OMConfigKeys.OZONE_OM_ENABLE_FILESYSTEM_PATHS_DEFAULT);
+ .getBoolean(OmConfig.Keys.ENABLE_FILESYSTEM_PATHS,
+ OmConfig.Defaults.ENABLE_FILESYSTEM_PATHS);
try {
// Resolve the bucket layout in case this is a Link Bucket.
BucketLayout resolvedBucketLayout =