You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by gu...@apache.org on 2014/10/28 21:42:07 UTC

svn commit: r1634974 - in /hive/trunk/common/src: java/org/apache/hadoop/hive/conf/HiveConf.java test/org/apache/hadoop/hive/conf/TestHiveConf.java

Author: gunther
Date: Tue Oct 28 20:42:06 2014
New Revision: 1634974

URL: http://svn.apache.org/r1634974
Log:
HIVE-8605: HIVE-5799 breaks backward compatibility for time values in config (Alan Gates via Gunther Hagleitner)

Modified:
    hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
    hive/trunk/common/src/test/org/apache/hadoop/hive/conf/TestHiveConf.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=1634974&r1=1634973&r2=1634974&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 Tue Oct 28 20:42:06 2014
@@ -2125,7 +2125,7 @@ public class HiveConf extends Configurat
 
   public static TimeUnit unitFor(String unit, TimeUnit defaultUnit) {
     unit = unit.trim().toLowerCase();
-    if (unit.isEmpty()) {
+    if (unit.isEmpty() || unit.equals("l")) {
       if (defaultUnit == null) {
         throw new IllegalArgumentException("Time unit is not specified");
       }

Modified: hive/trunk/common/src/test/org/apache/hadoop/hive/conf/TestHiveConf.java
URL: http://svn.apache.org/viewvc/hive/trunk/common/src/test/org/apache/hadoop/hive/conf/TestHiveConf.java?rev=1634974&r1=1634973&r2=1634974&view=diff
==============================================================================
--- hive/trunk/common/src/test/org/apache/hadoop/hive/conf/TestHiveConf.java (original)
+++ hive/trunk/common/src/test/org/apache/hadoop/hive/conf/TestHiveConf.java Tue Oct 28 20:42:06 2014
@@ -24,6 +24,8 @@ import org.apache.hive.common.util.HiveT
 import org.junit.Assert;
 import org.junit.Test;
 
+import java.util.concurrent.TimeUnit;
+
 
 /**
  * TestHiveConf
@@ -95,4 +97,24 @@ public class TestHiveConf {
       Assert.assertTrue(i == HiveConf.getPositionFromInternalName(HiveConf.getColumnInternalName(i)));
     }
   }
+
+  @Test
+  public void testUnitFor() throws Exception {
+    Assert.assertEquals(TimeUnit.SECONDS, HiveConf.unitFor("L", TimeUnit.SECONDS));
+    Assert.assertEquals(TimeUnit.MICROSECONDS, HiveConf.unitFor("", TimeUnit.MICROSECONDS));
+    Assert.assertEquals(TimeUnit.DAYS, HiveConf.unitFor("d", null));
+    Assert.assertEquals(TimeUnit.DAYS, HiveConf.unitFor("days", null));
+    Assert.assertEquals(TimeUnit.HOURS, HiveConf.unitFor("h", null));
+    Assert.assertEquals(TimeUnit.HOURS, HiveConf.unitFor("hours", null));
+    Assert.assertEquals(TimeUnit.MINUTES, HiveConf.unitFor("m", null));
+    Assert.assertEquals(TimeUnit.MINUTES, HiveConf.unitFor("minutes", null));
+    Assert.assertEquals(TimeUnit.SECONDS, HiveConf.unitFor("s", null));
+    Assert.assertEquals(TimeUnit.SECONDS, HiveConf.unitFor("seconds", null));
+    Assert.assertEquals(TimeUnit.MILLISECONDS, HiveConf.unitFor("ms", null));
+    Assert.assertEquals(TimeUnit.MILLISECONDS, HiveConf.unitFor("msecs", null));
+    Assert.assertEquals(TimeUnit.MICROSECONDS, HiveConf.unitFor("us", null));
+    Assert.assertEquals(TimeUnit.MICROSECONDS, HiveConf.unitFor("useconds", null));
+    Assert.assertEquals(TimeUnit.NANOSECONDS, HiveConf.unitFor("ns", null));
+    Assert.assertEquals(TimeUnit.NANOSECONDS, HiveConf.unitFor("nsecs", null));
+  }
 }