You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@carbondata.apache.org by "Vinod Rohilla (JIRA)" <ji...@apache.org> on 2017/03/14 13:08:41 UTC

[jira] [Created] (CARBONDATA-772) Number format exception displays to user in spark 2.1.

Vinod Rohilla created CARBONDATA-772:
----------------------------------------

             Summary: Number format exception displays to user in spark 2.1.
                 Key: CARBONDATA-772
                 URL: https://issues.apache.org/jira/browse/CARBONDATA-772
             Project: CarbonData
          Issue Type: Bug
          Components: sql
    Affects Versions: 1.0.0-incubating
         Environment: Spark 2.1
            Reporter: Vinod Rohilla
            Priority: Trivial
         Attachments: 2000_UniqData.csv

Number format  exception displays to user while execute the queries:

Steps to reproduces:

1: Create table in Hive:
CREATE TABLE uniqdata4 (CUST_ID int,CUST_NAME String,ACTIVE_EMUI_VERSION string, DOB timestamp, DOJ timestamp, BIGINT_COLUMN1 bigint,BIGINT_COLUMN2 bigint,DECIMAL_COLUMN1 decimal(30,10), DECIMAL_COLUMN2 decimal(36,10),Double_COLUMN1 double, Double_COLUMN2 double,INTEGER_COLUMN1 int) ROW FORMAT DELIMITED FIELDS TERMINATED BY ",";

2:Load data in Hive:
LOAD DATA LOCAL INPATH '/home/vinod/Desktop/AllCSV/2000_UniqData.csv' into table uniqdata4;

3:Select CUST_ID,CUST_NAME,DOB,BIGINT_COLUMN1,DECIMAL_COLUMN1,Double_COLUMN1,INTEGER_COLUMN1 from uniqdata4 where CUST_ID in ('10020','10030','10032','10035','10040','10060','',NULL,' ')  or  INTEGER_COLUMN1 in (1021,1031,1032,1033,'',NULL,' ') or DECIMAL_COLUMN1 in ('12345679921.1234000000','12345679931.1234000000','12345679936.1234000000','',NULL,' ');

Result:
+----------+------------------+------------------------+-----------------+-------------------------+----------------------+------------------+--+
| CUST_ID  |    CUST_NAME     |          DOB           | BIGINT_COLUMN1  |     DECIMAL_COLUMN1     |    Double_COLUMN1    | INTEGER_COLUMN1  |
+----------+------------------+------------------------+-----------------+-------------------------+----------------------+------------------+--+
| 10020    | CUST_NAME_01020  | 1972-10-17 01:00:03.0  | 123372037874    | 12345679921.1234000000  | 1.12345674897976E10  | 1021             |
| 10030    | CUST_NAME_01030  | 1972-10-27 01:00:03.0  | 123372037884    | 12345679931.1234000000  | 1.12345674897976E10  | 1031             |
| 10031    | CUST_NAME_01031  | 1972-10-28 01:00:03.0  | 123372037885    | 12345679932.1234000000  | 1.12345674897976E10  | 1032             |
| 10032    | CUST_NAME_01032  | 1972-10-29 01:00:03.0  | 123372037886    | 12345679933.1234000000  | 1.12345674897976E10  | 1033             |
| 10035    | CUST_NAME_01035  | 1972-11-01 01:00:03.0  | 123372037889    | 12345679936.1234000000  | 1.12345674897976E10  | 1036             |
| 10040    | CUST_NAME_01040  | 1972-11-06 01:00:03.0  | 123372037894    | 12345679941.1234000000  | 1.12345674897976E10  | 1041             |
| 10060    | CUST_NAME_01060  | 1972-11-26 01:00:03.0  | 123372037914    | 12345679961.1234000000  | 1.12345674897976E10  | 1061             |
+----------+------------------+------------------------+-----------------+-------------------------+----------------------+------------------+--+


Create table in CarbonData :

1: create table:

CREATE TABLE uniqdata (CUST_ID int,CUST_NAME String,ACTIVE_EMUI_VERSION string, DOB timestamp, DOJ timestamp, BIGINT_COLUMN1 bigint,BIGINT_COLUMN2 bigint,DECIMAL_COLUMN1 decimal(30,10), DECIMAL_COLUMN2 decimal(36,10),Double_COLUMN1 double, Double_COLUMN2 double,INTEGER_COLUMN1 int) STORED BY 'org.apache.carbondata.format' TBLPROPERTIES ("TABLE_BLOCKSIZE"= "256 MB");

2:Load data in table

LOAD DATA INPATH 'hdfs://localhost:54310/2000_UniqData.csv' into table uniqdata OPTIONS('DELIMITER'=',' , 'QUOTECHAR'='"','BAD_RECORDS_ACTION'='FORCE','FILEHEADER'='CUST_ID,CUST_NAME,ACTIVE_EMUI_VERSION,DOB,DOJ,BIGINT_COLUMN1,BIGINT_COLUMN2,DECIMAL_COLUMN1,DECIMAL_COLUMN2,Double_COLUMN1,Double_COLUMN2,INTEGER_COLUMN1');

3: Execute Selet queries:
select CUST_ID,CUST_NAME,DOB,BIGINT_COLUMN1,DECIMAL_COLUMN1,Double_COLUMN1,INTEGER_COLUMN1 from uniqdata where CUST_ID in ('10020','10030','10032','10035','10040','10060','',NULL,' ')  or  INTEGER_COLUMN1 in (1021,1031,1032,1033,'',NULL,' ') or DECIMAL_COLUMN1 in ('12345679921.1234000000','12345679931.1234000000','12345679936.1234000000','',NULL,' ');

Result:


Error: org.apache.spark.SparkException: Job aborted due to stage failure: Task 2 in stage 27.0 failed 1 times, most recent failure: Lost task 2.0 in stage 27.0 (TID 44, localhost, executor driver): java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.NumberFormatException
	at org.apache.carbondata.core.scan.processor.AbstractDataBlockIterator.updateScanner(AbstractDataBlockIterator.java:145)
	at org.apache.carbondata.core.scan.processor.impl.DataBlockIteratorImpl.next(DataBlockIteratorImpl.java:52)
	at org.apache.carbondata.core.scan.processor.impl.DataBlockIteratorImpl.next(DataBlockIteratorImpl.java:33)
	at org.apache.carbondata.core.scan.result.iterator.DetailQueryResultIterator.getBatchResult(DetailQueryResultIterator.java:52)
	at org.apache.carbondata.core.scan.result.iterator.DetailQueryResultIterator.next(DetailQueryResultIterator.java:42)
	at org.apache.carbondata.core.scan.result.iterator.DetailQueryResultIterator.next(DetailQueryResultIterator.java:31)
	at org.apache.carbondata.core.scan.result.iterator.ChunkRowIterator.<init>(ChunkRowIterator.java:41)
	at org.apache.carbondata.hadoop.CarbonRecordReader.initialize(CarbonRecordReader.java:79)
	at org.apache.carbondata.spark.rdd.CarbonScanRDD.compute(CarbonScanRDD.scala:202)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:323)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:287)
	at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:323)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:287)
	at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:323)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:287)
	at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:323)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:287)
	at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:87)
	at org.apache.spark.scheduler.Task.run(Task.scala:99)
	at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:282)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.util.concurrent.ExecutionException: java.lang.NumberFormatException
	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
	at java.util.concurrent.FutureTask.get(FutureTask.java:192)
	at org.apache.carbondata.core.scan.processor.AbstractDataBlockIterator.getNextScannedResult(AbstractDataBlockIterator.java:155)
	at org.apache.carbondata.core.scan.processor.AbstractDataBlockIterator.updateScanner(AbstractDataBlockIterator.java:133)
	... 25 more
Caused by: java.lang.NumberFormatException
	at java.math.BigDecimal.<init>(BigDecimal.java:596)
	at java.math.BigDecimal.<init>(BigDecimal.java:383)
	at java.math.BigDecimal.<init>(BigDecimal.java:806)
	at org.apache.carbondata.core.scan.expression.ExpressionResult.getDecimal(ExpressionResult.java:313)
	at org.apache.carbondata.core.scan.expression.conditional.InExpression.evaluate(InExpression.java:76)
	at org.apache.carbondata.core.scan.filter.executer.RowLevelFilterExecuterImpl.applyFilter(RowLevelFilterExecuterImpl.java:122)
	at org.apache.carbondata.core.scan.filter.executer.OrFilterExecuterImpl.applyFilter(OrFilterExecuterImpl.java:39)
	at org.apache.carbondata.core.scan.scanner.impl.FilterScanner.fillScannedResult(FilterScanner.java:133)
	at org.apache.carbondata.core.scan.scanner.impl.FilterScanner.scanBlocklet(FilterScanner.java:92)
	at org.apache.carbondata.core.scan.processor.AbstractDataBlockIterator$1.call(AbstractDataBlockIterator.java:198)
	at org.apache.carbondata.core.scan.processor.AbstractDataBlockIterator$1.call(AbstractDataBlockIterator.java:185)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	... 3 more

Driver stacktrace: (state=,code=0)



Expected Result: correct result should be display in spark 2.1.




























--
This message was sent by Atlassian JIRA
(v6.3.15#6346)