[ 
https://issues.apache.org/jira/browse/DRILL-406?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jacques Nadeau resolved DRILL-406.
----------------------------------

    Resolution: Fixed
      Assignee: Steven Phillips

resolved in 11f30a0

> JSON integer range of valid values in drill different from native JSON
> ----------------------------------------------------------------------
>
>                 Key: DRILL-406
>                 URL: https://issues.apache.org/jira/browse/DRILL-406
>             Project: Apache Drill
>          Issue Type: Bug
>            Reporter: Ramana Inukonda Nagaraj
>            Assignee: Steven Phillips
>         Attachments: DRILL-406.patch, DRILL-406.patch
>
>
> JSON has a maximum integer value of 9007199254740992 (2^53). However Drill 
> seems to follow maximum integer range for JSON. IE 2^31
> 0: jdbc:drill:schema=dfs> select salary from 
> dfs.`/user/root/employeeNestedObject.json`;
> +------------+
> |   salary   |
> +------------+
> | 2147483647 |
> +------------+
> 1 row selected (0.079 seconds)
> However when data is above 2^31 (Integer range) it fails with the exception
> 13:29:12.926 [WorkManager-3] ERROR o.a.d.e.s.easy.json.JSONRecordReader - 
> Error reading next in Json reader
> com.fasterxml.jackson.core.JsonParseException: Numeric value (2147483648) out 
> of range of int
>  at [Source: com.mapr.fs.MapRFsDataInputStream@6d9acc54; line: 6, column: 23]
>       at 
> com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1369) 
> ~[jackson-core-2.2.0.jar:2.2.0]
>       at 
> com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:599)
>  ~[jackson-core-2.2.0.jar:2.2.0]
>       at 
> com.fasterxml.jackson.core.base.ParserBase.convertNumberToInt(ParserBase.java:847)
>  ~[jackson-core-2.2.0.jar:2.2.0]
>       at 
> com.fasterxml.jackson.core.base.ParserBase.getIntValue(ParserBase.java:643) 
> ~[jackson-core-2.2.0.jar:2.2.0]
>       at 
> org.apache.drill.exec.schema.json.jackson.JacksonHelper.getValueFromFieldType(JacksonHelper.java:86)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.store.easy.json.JSONRecordReader$ReadType.recordData(JSONRecordReader.java:398)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.store.easy.json.JSONRecordReader$ReadType.readRecord(JSONRecordReader.java:304)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.store.easy.json.JSONRecordReader.next(JSONRecordReader.java:143)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.physical.impl.ScanBatch.next(ScanBatch.java:94) 
> [drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.record.AbstractSingleRecordBatch.next(AbstractSingleRecordBatch.java:42)
>  
> [drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.next(ScreenCreator.java:80)
>  
> [drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:83)
>  
> [drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  [na:1.7.0_45]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  [na:1.7.0_45]
>       at java.lang.Thread.run(Thread.java:744) [na:1.7.0_45]
> 13:29:12.928 [WorkManager-3] DEBUG o.a.d.e.w.fragment.FragmentExecutor - 
> Caught exception while running fragment
> java.lang.NullPointerException: null
>       at 
> org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema(ProjectRecordBatch.java:131)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.record.AbstractSingleRecordBatch.next(AbstractSingleRecordBatch.java:53)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.next(ScreenCreator.java:80)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:83)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  [na:1.7.0_45]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  [na:1.7.0_45]
>       at java.lang.Thread.run(Thread.java:744) [na:1.7.0_45]
> 13:29:12.929 [WorkManager-3] ERROR o.a.d.e.w.f.AbstractStatusReporter - Error 
> 05a5adcf-4e7b-4a3c-a509-5ac75198856f: Failure while running fragment.
> java.lang.NullPointerException: null
>       at 
> org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema(ProjectRecordBatch.java:131)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.record.AbstractSingleRecordBatch.next(AbstractSingleRecordBatch.java:53)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.next(ScreenCreator.java:80)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:83)
>  
> ~[drill-java-exec-1.0.0-m2-incubating-SNAPSHOT-rebuffed.jar:1.0.0-m2-incubating-SNAPSHOT]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  [na:1.7.0_45]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  [na:1.7.0_45]
>       at java.lang.Thread.run(Thread.java:744) [na:1.7.0_45]



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to