You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by xu...@apache.org on 2014/04/28 06:04:31 UTC
svn commit: r1590552 - in /hive/trunk:
common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
conf/hive-default.xml.template
metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreFsImpl.java
Author: xuefu
Date: Mon Apr 28 04:04:31 2014
New Revision: 1590552
URL: http://svn.apache.org/r1590552
Log:
HIVE-6469: skipTrash option in hive command line (Jayesh via Xuefu)
Modified:
hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
hive/trunk/conf/hive-default.xml.template
hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreFsImpl.java
Modified: hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
URL: http://svn.apache.org/viewvc/hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java?rev=1590552&r1=1590551&r2=1590552&view=diff
==============================================================================
--- hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java (original)
+++ hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java Mon Apr 28 04:04:31 2014
@@ -858,6 +858,7 @@ public class HiveConf extends Configurat
HIVE_START_CLEANUP_SCRATCHDIR("hive.start.cleanup.scratchdir", false),
HIVE_INSERT_INTO_MULTILEVEL_DIRS("hive.insert.into.multilevel.dirs", false),
HIVE_WAREHOUSE_SUBDIR_INHERIT_PERMS("hive.warehouse.subdir.inherit.perms", false),
+ HIVE_WAREHOUSE_DATA_SKIPTRASH("hive.warehouse.data.skipTrash", false),
// whether insert into external tables is allowed
HIVE_INSERT_INTO_EXTERNAL_TABLES("hive.insert.into.external.tables", true),
Modified: hive/trunk/conf/hive-default.xml.template
URL: http://svn.apache.org/viewvc/hive/trunk/conf/hive-default.xml.template?rev=1590552&r1=1590551&r2=1590552&view=diff
==============================================================================
--- hive/trunk/conf/hive-default.xml.template (original)
+++ hive/trunk/conf/hive-default.xml.template Mon Apr 28 04:04:31 2014
@@ -1858,6 +1858,14 @@
</property>
<property>
+ <name>hive.warehouse.data.skipTrash</name>
+ <value>false</value>
+ <description>
+ Set this to true if you do not want table data to be moved to trash while dropping table.
+ </description>
+</property>
+
+<property>
<name>hive.exec.job.debug.capture.stacktraces</name>
<value>true</value>
<description>Whether or not stack traces parsed from the task logs of a sampled failed task for
Modified: hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreFsImpl.java
URL: http://svn.apache.org/viewvc/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreFsImpl.java?rev=1590552&r1=1590551&r2=1590552&view=diff
==============================================================================
--- hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreFsImpl.java (original)
+++ hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreFsImpl.java Mon Apr 28 04:04:31 2014
@@ -25,6 +25,7 @@ import org.apache.commons.logging.LogFac
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.hive.conf.HiveConf;
import org.apache.hadoop.hive.metastore.api.MetaException;
import org.apache.hadoop.hive.shims.HadoopShims;
import org.apache.hadoop.hive.shims.ShimLoader;
@@ -40,8 +41,14 @@ public class HiveMetaStoreFsImpl impleme
LOG.info("deleting " + f);
HadoopShims hadoopShim = ShimLoader.getHadoopShims();
+ boolean skipTrash = HiveConf.getBoolVar(conf,
+ HiveConf.ConfVars.HIVE_WAREHOUSE_DATA_SKIPTRASH);
+
try {
- if (hadoopShim.moveToAppropriateTrash(fs, f, conf)) {
+ if (skipTrash) {
+ LOG.info("Not moving"+ f +" to trash due to configuration " +
+ HiveConf.ConfVars.HIVE_WAREHOUSE_DATA_SKIPTRASH + " is set to true.");
+ } else if (hadoopShim.moveToAppropriateTrash(fs, f, conf)) {
LOG.info("Moved to trash: " + f);
return true;
}