You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@orc.apache.org by om...@apache.org on 2017/05/24 17:38:10 UTC

orc git commit: ORC-198. Decimal types generated by converting from JSON get an InvalidArgumentException.

Repository: orc
Updated Branches:
  refs/heads/master d4f092411 -> 32d2e08c8


ORC-198. Decimal types generated by converting from JSON get an
InvalidArgumentException.

Signed-off-by: Owen O'Malley <om...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/orc/repo
Commit: http://git-wip-us.apache.org/repos/asf/orc/commit/32d2e08c
Tree: http://git-wip-us.apache.org/repos/asf/orc/tree/32d2e08c
Diff: http://git-wip-us.apache.org/repos/asf/orc/diff/32d2e08c

Branch: refs/heads/master
Commit: 32d2e08c8a9ea866759376484c1714f16190288f
Parents: d4f0924
Author: Shawn Hooton <sh...@gmail.com>
Authored: Wed May 24 10:53:59 2017 -0400
Committer: Owen O'Malley <om...@apache.org>
Committed: Wed May 24 10:37:47 2017 -0700

----------------------------------------------------------------------
 java/tools/src/java/org/apache/orc/tools/json/NumericType.java   | 2 +-
 .../src/test/org/apache/orc/tools/json/TestJsonSchemaFinder.java | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/orc/blob/32d2e08c/java/tools/src/java/org/apache/orc/tools/json/NumericType.java
----------------------------------------------------------------------
diff --git a/java/tools/src/java/org/apache/orc/tools/json/NumericType.java b/java/tools/src/java/org/apache/orc/tools/json/NumericType.java
index 172cb4c..4555b57 100644
--- a/java/tools/src/java/org/apache/orc/tools/json/NumericType.java
+++ b/java/tools/src/java/org/apache/orc/tools/json/NumericType.java
@@ -102,7 +102,7 @@ class NumericType extends HiveType {
         return TypeDescription.createLong();
       case DECIMAL:
         return TypeDescription.createDecimal()
-            .withPrecision(intDigits+scale).withScale(scale);
+            .withScale(scale).withPrecision(intDigits+scale);
       case FLOAT:
         return TypeDescription.createFloat();
       case DOUBLE:

http://git-wip-us.apache.org/repos/asf/orc/blob/32d2e08c/java/tools/src/test/org/apache/orc/tools/json/TestJsonSchemaFinder.java
----------------------------------------------------------------------
diff --git a/java/tools/src/test/org/apache/orc/tools/json/TestJsonSchemaFinder.java b/java/tools/src/test/org/apache/orc/tools/json/TestJsonSchemaFinder.java
index fac092a..7dd9367 100644
--- a/java/tools/src/test/org/apache/orc/tools/json/TestJsonSchemaFinder.java
+++ b/java/tools/src/test/org/apache/orc/tools/json/TestJsonSchemaFinder.java
@@ -114,6 +114,10 @@ public class TestJsonSchemaFinder {
     assertEquals("double",
         JsonSchemaFinder.pickType(new JsonPrimitive
             (new LazilyParsedNumber("1.2E40"))).toString());
+    // Make the schema
+    assertEquals("decimal(3,2)",
+        JsonSchemaFinder.pickType(new JsonPrimitive(
+            new LazilyParsedNumber("1.23"))).getSchema().toString());
   }
 
   @Test