diff --git a/hadoop-compat-bench/HdfsCompatBenchIssue.md b/hadoop-tools/hadoop-compat-bench/HdfsCompatBenchIssue.md
similarity index 100%
rename from hadoop-compat-bench/HdfsCompatBenchIssue.md
rename to hadoop-tools/hadoop-compat-bench/HdfsCompatBenchIssue.md
diff --git a/hadoop-compat-bench/pom.xml b/hadoop-tools/hadoop-compat-bench/pom.xml
similarity index 93%
rename from hadoop-compat-bench/pom.xml
rename to hadoop-tools/hadoop-compat-bench/pom.xml
index c904f3dfc4fa3..f9b082def4541 100644
--- a/hadoop-compat-bench/pom.xml
+++ b/hadoop-tools/hadoop-compat-bench/pom.xml
@@ -19,7 +19,7 @@
org.apache.hadoop
hadoop-project
3.5.0-SNAPSHOT
- ../hadoop-project
+ ../../hadoop-project
hadoop-compat-bench
3.5.0-SNAPSHOT
@@ -79,7 +79,7 @@
- org.apache.hadoop.compat.HdfsCompatibility
+ org.apache.hadoop.fs.compat.HdfsCompatibility
@@ -91,7 +91,7 @@
- org.apache.hadoop.compat.hdfs.HdfsCompatMiniCluster
+ org.apache.hadoop.fs.compat.hdfs.HdfsCompatMiniCluster
@@ -115,4 +115,4 @@
-
+
\ No newline at end of file
diff --git a/hadoop-compat-bench/shell/cases/attr.t b/hadoop-tools/hadoop-compat-bench/shell/cases/attr.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/attr.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/attr.t
diff --git a/hadoop-compat-bench/shell/cases/concat.t b/hadoop-tools/hadoop-compat-bench/shell/cases/concat.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/concat.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/concat.t
diff --git a/hadoop-compat-bench/shell/cases/copy.t b/hadoop-tools/hadoop-compat-bench/shell/cases/copy.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/copy.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/copy.t
diff --git a/hadoop-compat-bench/shell/cases/fileinfo.t b/hadoop-tools/hadoop-compat-bench/shell/cases/fileinfo.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/fileinfo.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/fileinfo.t
diff --git a/hadoop-compat-bench/shell/cases/modification.t b/hadoop-tools/hadoop-compat-bench/shell/cases/modification.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/modification.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/modification.t
diff --git a/hadoop-compat-bench/shell/cases/move.t b/hadoop-tools/hadoop-compat-bench/shell/cases/move.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/move.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/move.t
diff --git a/hadoop-compat-bench/shell/cases/read.t b/hadoop-tools/hadoop-compat-bench/shell/cases/read.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/read.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/read.t
diff --git a/hadoop-compat-bench/shell/cases/remove.t b/hadoop-tools/hadoop-compat-bench/shell/cases/remove.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/remove.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/remove.t
diff --git a/hadoop-compat-bench/shell/cases/snapshot.t b/hadoop-tools/hadoop-compat-bench/shell/cases/snapshot.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/snapshot.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/snapshot.t
diff --git a/hadoop-compat-bench/shell/cases/storagePolicy.t b/hadoop-tools/hadoop-compat-bench/shell/cases/storagePolicy.t
similarity index 100%
rename from hadoop-compat-bench/shell/cases/storagePolicy.t
rename to hadoop-tools/hadoop-compat-bench/shell/cases/storagePolicy.t
diff --git a/hadoop-compat-bench/shell/misc.sh b/hadoop-tools/hadoop-compat-bench/shell/misc.sh
similarity index 100%
rename from hadoop-compat-bench/shell/misc.sh
rename to hadoop-tools/hadoop-compat-bench/shell/misc.sh
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/AbstractHdfsCompatCase.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/AbstractHdfsCompatCase.java
similarity index 98%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/AbstractHdfsCompatCase.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/AbstractHdfsCompatCase.java
index b59fe8d6a4e03..0fa5e49f05efc 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/AbstractHdfsCompatCase.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/AbstractHdfsCompatCase.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import org.apache.hadoop.fs.FileSystem;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatApiScope.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatApiScope.java
similarity index 99%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatApiScope.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatApiScope.java
index 4e57e22854484..eb572bb629674 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatApiScope.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatApiScope.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import org.apache.hadoop.classification.VisibleForTesting;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCase.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCase.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCase.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCase.java
index c62bf6295947d..f7d2b566f3abb 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCase.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCase.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseCleanup.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseCleanup.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseCleanup.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseCleanup.java
index a6af788820a12..5ef6af21aac36 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseCleanup.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseCleanup.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseGroup.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseGroup.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseGroup.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseGroup.java
index 53554b0890763..8f47538b52909 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseGroup.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseGroup.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCasePrepare.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCasePrepare.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCasePrepare.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCasePrepare.java
index eff03f6414c2b..aa1cc770a8861 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCasePrepare.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCasePrepare.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseSetUp.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseSetUp.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseSetUp.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseSetUp.java
index a80f8595fcb9c..10a7eff0bc71b 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseSetUp.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseSetUp.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseTearDown.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseTearDown.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseTearDown.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseTearDown.java
index 0282958431a73..e7a74459d23be 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCaseTearDown.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCaseTearDown.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCommand.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCommand.java
similarity index 95%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCommand.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCommand.java
index 08b40c74ce54f..8ef35647dd45a 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatCommand.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatCommand.java
@@ -15,12 +15,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import org.apache.hadoop.classification.VisibleForTesting;
-import org.apache.hadoop.compat.suites.HdfsCompatSuiteForAll;
-import org.apache.hadoop.compat.suites.HdfsCompatSuiteForShell;
-import org.apache.hadoop.compat.suites.HdfsCompatSuiteForTpcds;
+import org.apache.hadoop.fs.compat.suites.HdfsCompatSuiteForAll;
+import org.apache.hadoop.fs.compat.suites.HdfsCompatSuiteForShell;
+import org.apache.hadoop.fs.compat.suites.HdfsCompatSuiteForTpcds;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatEnvironment.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatEnvironment.java
similarity index 99%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatEnvironment.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatEnvironment.java
index c729a6d150f39..408581e42aa39 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatEnvironment.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatEnvironment.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import org.apache.hadoop.conf.Configuration;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatIllegalArgumentException.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatIllegalArgumentException.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatIllegalArgumentException.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatIllegalArgumentException.java
index ab49203b2ec7a..1ab8afbc920aa 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatIllegalArgumentException.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatIllegalArgumentException.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
public class HdfsCompatIllegalArgumentException
extends IllegalArgumentException {
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatIllegalCaseException.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatIllegalCaseException.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatIllegalCaseException.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatIllegalCaseException.java
index 3ecef57f02524..21e85c4cb5254 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatIllegalCaseException.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatIllegalCaseException.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import org.apache.hadoop.HadoopIllegalArgumentException;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatReport.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatReport.java
similarity index 98%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatReport.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatReport.java
index f7103f88b6ba3..d5713ced10a08 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatReport.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatReport.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import java.util.Collection;
import java.util.concurrent.ConcurrentLinkedQueue;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatShellScope.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatShellScope.java
similarity index 99%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatShellScope.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatShellScope.java
index 08e2325ed4b35..4753dd1f797b6 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatShellScope.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatShellScope.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import org.apache.commons.io.FileUtils;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatSuite.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatSuite.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatSuite.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatSuite.java
index 3ee446fcd777b..a399bd323ec7f 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatSuite.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatSuite.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
public interface HdfsCompatSuite {
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatUtil.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatUtil.java
similarity index 99%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatUtil.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatUtil.java
index 337efe2e7c02c..813b902327d02 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatUtil.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatUtil.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import org.apache.hadoop.fs.FSDataInputStream;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatibility.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatibility.java
similarity index 99%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatibility.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatibility.java
index d4e32cb6999f3..dc5464abf9663 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/HdfsCompatibility.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/HdfsCompatibility.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import java.io.BufferedWriter;
import java.io.File;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatAcl.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatAcl.java
similarity index 97%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatAcl.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatAcl.java
index 2463d5c4131e0..5138b890bed0f 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatAcl.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatAcl.java
@@ -15,11 +15,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.fs.compat.*;
import org.apache.hadoop.fs.permission.AclEntry;
import org.apache.hadoop.fs.permission.AclEntryScope;
import org.apache.hadoop.fs.permission.AclStatus;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatCreate.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatCreate.java
similarity index 98%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatCreate.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatCreate.java
index cd4642d5af0ac..c08ccc3af7daf 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatCreate.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatCreate.java
@@ -15,10 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.*;
+import org.apache.hadoop.fs.compat.*;
import org.apache.hadoop.io.IOUtils;
import org.junit.Assert;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatDirectory.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatDirectory.java
similarity index 98%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatDirectory.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatDirectory.java
index bb9a9d0b9291e..bf58a1fd1f846 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatDirectory.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatDirectory.java
@@ -15,10 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.*;
+import org.apache.hadoop.fs.compat.*;
import org.junit.Assert;
import java.io.IOException;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatFile.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatFile.java
similarity index 98%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatFile.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatFile.java
index f81c1043a5a30..ba2159148b3cb 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatFile.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatFile.java
@@ -15,10 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.*;
+import org.apache.hadoop.fs.compat.*;
import org.apache.hadoop.fs.permission.FsAction;
import org.apache.hadoop.fs.permission.FsPermission;
import org.apache.hadoop.io.IOUtils;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatLocal.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatLocal.java
similarity index 97%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatLocal.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatLocal.java
index d3db5dbd59adf..52404f116a8d7 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatLocal.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatLocal.java
@@ -15,13 +15,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.LocalFileSystem;
import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.fs.compat.*;
import org.junit.Assert;
import java.io.IOException;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatServer.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatServer.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatServer.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatServer.java
index ccd60f23eaf73..9f1c62c1139bd 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatServer.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatServer.java
@@ -15,13 +15,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-import org.apache.hadoop.compat.AbstractHdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatCaseGroup;
-import org.apache.hadoop.compat.HdfsCompatUtil;
+import org.apache.hadoop.fs.compat.AbstractHdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatCaseGroup;
+import org.apache.hadoop.fs.compat.HdfsCompatUtil;
import org.apache.hadoop.fs.*;
import org.junit.Assert;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatSnapshot.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatSnapshot.java
similarity index 98%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatSnapshot.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatSnapshot.java
index 73d28b7f2bdde..d710b46c8edb3 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatSnapshot.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatSnapshot.java
@@ -15,11 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.fs.compat.*;
import org.junit.Assert;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatStoragePolicy.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatStoragePolicy.java
similarity index 97%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatStoragePolicy.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatStoragePolicy.java
index fd5efbe934840..b87f64d78eedc 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatStoragePolicy.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatStoragePolicy.java
@@ -15,12 +15,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.BlockStoragePolicySpi;
import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.fs.compat.*;
import org.junit.Assert;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatSymlink.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatSymlink.java
similarity index 96%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatSymlink.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatSymlink.java
index 8c26f367171da..5836155a5abe7 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatSymlink.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatSymlink.java
@@ -15,12 +15,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.fs.compat.*;
import org.junit.Assert;
import java.io.IOException;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatTpcds.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatTpcds.java
similarity index 97%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatTpcds.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatTpcds.java
index 9c9f295f26852..1dfe3ca4d9e8b 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatTpcds.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatTpcds.java
@@ -15,10 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.*;
+import org.apache.hadoop.fs.compat.*;
import org.junit.Assert;
import java.io.IOException;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatXAttr.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatXAttr.java
similarity index 97%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatXAttr.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatXAttr.java
index 5e21a8b47a15c..6cd514ff7be0b 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/function/HdfsCompatXAttr.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/function/HdfsCompatXAttr.java
@@ -15,11 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.function;
+package org.apache.hadoop.fs.compat.cases.function;
-
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.fs.compat.*;
import org.junit.Assert;
import java.io.IOException;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/implement/HdfsCompatFileSystemImpl.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/implement/HdfsCompatFileSystemImpl.java
similarity index 98%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/implement/HdfsCompatFileSystemImpl.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/implement/HdfsCompatFileSystemImpl.java
index 300b4756d60ac..db296c4938f8a 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/cases/implement/HdfsCompatFileSystemImpl.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/cases/implement/HdfsCompatFileSystemImpl.java
@@ -15,14 +15,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases.implement;
+package org.apache.hadoop.fs.compat.cases.implement;
import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.compat.AbstractHdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatCaseGroup;
-import org.apache.hadoop.compat.HdfsCompatUtil;
+import org.apache.hadoop.fs.compat.AbstractHdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatCaseGroup;
+import org.apache.hadoop.fs.compat.HdfsCompatUtil;
import org.apache.hadoop.fs.CommonPathCapabilities;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForAll.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForAll.java
similarity index 85%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForAll.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForAll.java
index 8d384a0c79696..83edd4346455c 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForAll.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForAll.java
@@ -15,13 +15,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.suites;
+package org.apache.hadoop.fs.compat.suites;
-
-import org.apache.hadoop.compat.AbstractHdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatSuite;
-import org.apache.hadoop.compat.cases.implement.*;
-import org.apache.hadoop.compat.cases.function.*;
+import org.apache.hadoop.fs.compat.AbstractHdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatSuite;
+import org.apache.hadoop.fs.compat.cases.function.*;
+import org.apache.hadoop.fs.compat.cases.implement.HdfsCompatFileSystemImpl;
public class HdfsCompatSuiteForAll implements HdfsCompatSuite {
@Override
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForShell.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForShell.java
similarity index 89%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForShell.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForShell.java
index b440efb24f7ac..da5f2d6675b73 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForShell.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForShell.java
@@ -15,11 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.suites;
+package org.apache.hadoop.fs.compat.suites;
-
-import org.apache.hadoop.compat.AbstractHdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatSuite;
+import org.apache.hadoop.fs.compat.AbstractHdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatSuite;
public class HdfsCompatSuiteForShell implements HdfsCompatSuite {
@Override
diff --git a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForTpcds.java b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForTpcds.java
similarity index 84%
rename from hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForTpcds.java
rename to hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForTpcds.java
index 9d69427697ede..9872a76344f3c 100644
--- a/hadoop-compat-bench/src/main/java/org/apache/hadoop/compat/suites/HdfsCompatSuiteForTpcds.java
+++ b/hadoop-tools/hadoop-compat-bench/src/main/java/org/apache/hadoop/fs/compat/suites/HdfsCompatSuiteForTpcds.java
@@ -15,12 +15,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.suites;
+package org.apache.hadoop.fs.compat.suites;
-
-import org.apache.hadoop.compat.AbstractHdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatSuite;
-import org.apache.hadoop.compat.cases.function.*;
+import org.apache.hadoop.fs.compat.AbstractHdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatSuite;
+import org.apache.hadoop.fs.compat.cases.function.HdfsCompatTpcds;
public class HdfsCompatSuiteForTpcds implements HdfsCompatSuite {
@Override
diff --git a/hadoop-compat-bench/src/main/resources/hadoop-compat-bench-log4j.properties b/hadoop-tools/hadoop-compat-bench/src/main/resources/hadoop-compat-bench-log4j.properties
similarity index 100%
rename from hadoop-compat-bench/src/main/resources/hadoop-compat-bench-log4j.properties
rename to hadoop-tools/hadoop-compat-bench/src/main/resources/hadoop-compat-bench-log4j.properties
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatDefaultSuites.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatDefaultSuites.java
similarity index 92%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatDefaultSuites.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatDefaultSuites.java
index 2b7adc6ac5287..bf22cc96e611c 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatDefaultSuites.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatDefaultSuites.java
@@ -15,10 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
-import org.apache.hadoop.compat.hdfs.HdfsCompatMiniCluster;
-import org.apache.hadoop.compat.hdfs.HdfsCompatTestCommand;
+import org.apache.hadoop.fs.compat.hdfs.HdfsCompatMiniCluster;
+import org.apache.hadoop.fs.compat.hdfs.HdfsCompatTestCommand;
import org.apache.hadoop.conf.Configuration;
import org.junit.Assert;
import org.junit.Test;
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatFsCommand.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatFsCommand.java
similarity index 95%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatFsCommand.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatFsCommand.java
index ed17fbced273d..0107b7c9ec788 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatFsCommand.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatFsCommand.java
@@ -15,13 +15,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
-import org.apache.hadoop.compat.hdfs.HdfsCompatMiniCluster;
+import org.apache.hadoop.fs.compat.hdfs.HdfsCompatMiniCluster;
import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.compat.cases.HdfsCompatAclTestCases;
-import org.apache.hadoop.compat.cases.HdfsCompatMkdirTestCases;
+import org.apache.hadoop.fs.compat.cases.HdfsCompatAclTestCases;
+import org.apache.hadoop.fs.compat.cases.HdfsCompatMkdirTestCases;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.junit.Assert;
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatInterfaceCoverage.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatInterfaceCoverage.java
similarity index 94%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatInterfaceCoverage.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatInterfaceCoverage.java
index 77643560aaba3..f7a78fe20c6d8 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatInterfaceCoverage.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatInterfaceCoverage.java
@@ -15,10 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
-import org.apache.hadoop.compat.cases.implement.HdfsCompatFileSystemImpl;
+import org.apache.hadoop.fs.compat.cases.implement.HdfsCompatFileSystemImpl;
import org.apache.hadoop.fs.FileSystem;
import org.junit.Assert;
import org.junit.Ignore;
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatShellCommand.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatShellCommand.java
similarity index 94%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatShellCommand.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatShellCommand.java
index 8d4c1678647c5..c3545625bb5a5 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/TestHdfsCompatShellCommand.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/TestHdfsCompatShellCommand.java
@@ -15,13 +15,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat;
+package org.apache.hadoop.fs.compat;
import org.apache.commons.io.FileUtils;
-import org.apache.hadoop.compat.hdfs.HdfsCompatMiniCluster;
-import org.apache.hadoop.compat.hdfs.HdfsCompatTestCommand;
-import org.apache.hadoop.compat.hdfs.HdfsCompatTestShellScope;
+import org.apache.hadoop.fs.compat.hdfs.HdfsCompatMiniCluster;
+import org.apache.hadoop.fs.compat.hdfs.HdfsCompatTestCommand;
+import org.apache.hadoop.fs.compat.hdfs.HdfsCompatTestShellScope;
import org.apache.hadoop.conf.Configuration;
import org.junit.After;
import org.junit.Assert;
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/cases/HdfsCompatAclTestCases.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/cases/HdfsCompatAclTestCases.java
similarity index 90%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/cases/HdfsCompatAclTestCases.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/cases/HdfsCompatAclTestCases.java
index 15baf04eac0ae..823f6ba2dd51f 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/cases/HdfsCompatAclTestCases.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/cases/HdfsCompatAclTestCases.java
@@ -15,11 +15,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases;
+package org.apache.hadoop.fs.compat.cases;
-import org.apache.hadoop.compat.AbstractHdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatUtil;
+import org.apache.hadoop.fs.compat.AbstractHdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatUtil;
import java.util.ArrayList;
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/cases/HdfsCompatMkdirTestCases.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/cases/HdfsCompatMkdirTestCases.java
similarity index 83%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/cases/HdfsCompatMkdirTestCases.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/cases/HdfsCompatMkdirTestCases.java
index 26209dcacc8be..0fa58e7dadb6e 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/cases/HdfsCompatMkdirTestCases.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/cases/HdfsCompatMkdirTestCases.java
@@ -15,11 +15,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.cases;
+package org.apache.hadoop.fs.compat.cases;
-import org.apache.hadoop.compat.AbstractHdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatCase;
-import org.apache.hadoop.compat.HdfsCompatUtil;
+import org.apache.hadoop.fs.compat.AbstractHdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatCase;
+import org.apache.hadoop.fs.compat.HdfsCompatUtil;
public class HdfsCompatMkdirTestCases extends AbstractHdfsCompatCase {
@HdfsCompatCase
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatMiniCluster.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatMiniCluster.java
similarity index 98%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatMiniCluster.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatMiniCluster.java
index ee6fe440edc9e..6de006418fd76 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatMiniCluster.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatMiniCluster.java
@@ -15,7 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.hdfs;
+package org.apache.hadoop.fs.compat.hdfs;
import org.apache.hadoop.conf.Configuration;
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatTestCommand.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatTestCommand.java
similarity index 88%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatTestCommand.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatTestCommand.java
index e998ee8f18d25..cfbca32764fe5 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatTestCommand.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatTestCommand.java
@@ -15,11 +15,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.hdfs;
+package org.apache.hadoop.fs.compat.hdfs;
-import org.apache.hadoop.compat.*;
import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.compat.HdfsCompatCommand;
+import org.apache.hadoop.fs.compat.HdfsCompatEnvironment;
+import org.apache.hadoop.fs.compat.HdfsCompatShellScope;
+import org.apache.hadoop.fs.compat.HdfsCompatSuite;
import java.io.IOException;
import java.lang.reflect.Field;
diff --git a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatTestShellScope.java b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatTestShellScope.java
similarity index 95%
rename from hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatTestShellScope.java
rename to hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatTestShellScope.java
index 62e95eace0fb8..b63c07d1ac908 100644
--- a/hadoop-compat-bench/src/test/java/org/apache/hadoop/compat/hdfs/HdfsCompatTestShellScope.java
+++ b/hadoop-tools/hadoop-compat-bench/src/test/java/org/apache/hadoop/fs/compat/hdfs/HdfsCompatTestShellScope.java
@@ -15,12 +15,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.hadoop.compat.hdfs;
+package org.apache.hadoop.fs.compat.hdfs;
import org.apache.hadoop.classification.VisibleForTesting;
-import org.apache.hadoop.compat.HdfsCompatEnvironment;
-import org.apache.hadoop.compat.HdfsCompatShellScope;
-import org.apache.hadoop.compat.HdfsCompatSuite;
+import org.apache.hadoop.fs.compat.HdfsCompatEnvironment;
+import org.apache.hadoop.fs.compat.HdfsCompatShellScope;
+import org.apache.hadoop.fs.compat.HdfsCompatSuite;
import java.io.File;
import java.io.FileOutputStream;
diff --git a/hadoop-compat-bench/src/test/resources/hadoop-compat-bench-test-shell-hadoop.sh b/hadoop-tools/hadoop-compat-bench/src/test/resources/hadoop-compat-bench-test-shell-hadoop.sh
similarity index 100%
rename from hadoop-compat-bench/src/test/resources/hadoop-compat-bench-test-shell-hadoop.sh
rename to hadoop-tools/hadoop-compat-bench/src/test/resources/hadoop-compat-bench-test-shell-hadoop.sh
diff --git a/hadoop-compat-bench/src/test/resources/hadoop-compat-bench-test-shell-hdfs.sh b/hadoop-tools/hadoop-compat-bench/src/test/resources/hadoop-compat-bench-test-shell-hdfs.sh
similarity index 100%
rename from hadoop-compat-bench/src/test/resources/hadoop-compat-bench-test-shell-hdfs.sh
rename to hadoop-tools/hadoop-compat-bench/src/test/resources/hadoop-compat-bench-test-shell-hdfs.sh
diff --git a/hadoop-compat-bench/src/test/resources/test-case-simple.t b/hadoop-tools/hadoop-compat-bench/src/test/resources/test-case-simple.t
similarity index 100%
rename from hadoop-compat-bench/src/test/resources/test-case-simple.t
rename to hadoop-tools/hadoop-compat-bench/src/test/resources/test-case-simple.t
diff --git a/hadoop-compat-bench/src/test/resources/test-case-skip.t b/hadoop-tools/hadoop-compat-bench/src/test/resources/test-case-skip.t
similarity index 100%
rename from hadoop-compat-bench/src/test/resources/test-case-skip.t
rename to hadoop-tools/hadoop-compat-bench/src/test/resources/test-case-skip.t
diff --git a/hadoop-tools/pom.xml b/hadoop-tools/pom.xml
index 5816165f8ed11..8c1256a177cc4 100644
--- a/hadoop-tools/pom.xml
+++ b/hadoop-tools/pom.xml
@@ -52,6 +52,7 @@
hadoop-aliyun
hadoop-fs2img
hadoop-benchmark
+ hadoop-compat-bench