You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2014/04/16 02:20:04 UTC
svn commit: r1587764 -
/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java
Author: hashutosh
Date: Wed Apr 16 00:20:04 2014
New Revision: 1587764
URL: http://svn.apache.org/r1587764
Log:
HIVE-3595 : Hive should adapt new FsShell commands since Hadoop 2 has changed FsShell argument structures (Navis via Ashutosh Chauhan)
Modified:
hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java
Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java?rev=1587764&r1=1587763&r2=1587764&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java Wed Apr 16 00:20:04 2014
@@ -105,6 +105,7 @@ import org.apache.hadoop.hive.ql.session
import org.apache.hadoop.hive.serde2.Deserializer;
import org.apache.hadoop.hive.serde2.SerDeException;
import org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe;
+import org.apache.hadoop.hive.shims.ShimLoader;
import org.apache.hadoop.mapred.InputFormat;
import org.apache.hadoop.util.StringUtils;
import org.apache.thrift.TException;
@@ -2385,7 +2386,9 @@ private void constructOneLBLocationMap(F
// use FsShell to move data to .Trash first rather than delete permanently
FsShell fshell = new FsShell();
fshell.setConf(conf);
- fshell.run(new String[]{"-rmr", oldPath.toString()});
+ String[] rmr = isHadoop1() ? new String[]{"-rmr", oldPath.toString()} :
+ new String[]{"-rm", "-r", oldPath.toString()};
+ fshell.run(rmr);
}
} catch (Exception e) {
//swallow the exception
@@ -2438,6 +2441,10 @@ private void constructOneLBLocationMap(F
}
}
+ public static boolean isHadoop1() {
+ return ShimLoader.getMajorVersion().startsWith("0.20");
+ }
+
public void exchangeTablePartitions(Map<String, String> partitionSpecs,
String sourceDb, String sourceTable, String destDb,
String destinationTableName) throws HiveException {