From 6fbc2decb2cdb67a962b61604e1f78ee5cdcaa80 Mon Sep 17 00:00:00 2001
From: "alexandr.sidorchuk" <alexandr.sidorchuk@apm-consult.com>
Date: Fri, 20 Aug 2021 07:54:46 +0300
Subject: [PATCH] KYLIN-5066 CubeMigrationCrossClusterCLI - distcp
 (java.io.FileNotFoundException): Path is not a file

---
 .../kylin/tool/migration/CubeMigrationCrossClusterCLI.java     | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tool/src/main/java/org/apache/kylin/tool/migration/CubeMigrationCrossClusterCLI.java b/tool/src/main/java/org/apache/kylin/tool/migration/CubeMigrationCrossClusterCLI.java
index 1932108ca..a902ec695 100644
--- a/tool/src/main/java/org/apache/kylin/tool/migration/CubeMigrationCrossClusterCLI.java
+++ b/tool/src/main/java/org/apache/kylin/tool/migration/CubeMigrationCrossClusterCLI.java
@@ -23,6 +23,7 @@ import java.io.IOException;
 import java.nio.charset.Charset;
 import java.nio.file.Files;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
@@ -692,7 +693,7 @@ public class CubeMigrationCrossClusterCLI extends AbstractApplication {
     protected void copyHDFSPath(String srcDir, Configuration srcConf, String dstDir, Configuration dstConf)
             throws Exception {
         logger.info("start to copy hdfs directory from {} to {}", srcDir, dstDir);
-        DistCpOptions.Builder builder = new DistCpOptions.Builder(new Path(srcDir), new Path(dstDir));
+        DistCpOptions.Builder builder = new DistCpOptions.Builder(Collections.singletonList(new Path(srcDir)), new Path(dstDir));
         DistCpOptions distCpOptions = builder.preserve(DistCpOptions.FileAttribute.BLOCKSIZE).withBlocking(true).build();
         setTargetPathExists(distCpOptions);
         DistCp distCp = new DistCp(getConfOfDistCp(), distCpOptions);
-- 
2.20.1

