SWATI RAO created CARBONDATA-693:
------------------------------------

             Summary: Issue in select query for function Ceiling & Floor
                 Key: CARBONDATA-693
                 URL: https://issues.apache.org/jira/browse/CARBONDATA-693
             Project: CarbonData
          Issue Type: Bug
          Components: sql
    Affects Versions: 1.0.0-incubating
         Environment: Spark1.6
            Reporter: SWATI RAO
         Attachments: Test_Data1.csv

When executed in Hive  it is working Fine, But when we execute same query in 
carbondata it gives an error.
PushUP_FILTER_Test_Boundary_TC059

0: jdbc:hive2://hadoop-master:10000> create table Test_Boundary2 (c1_int 
int,c2_Bigint Bigint,c3_Decimal Decimal(38,30),c4_double double,c5_string 
string,c6_Timestamp Timestamp,c7_Datatype_Desc string) ;
+---------+--+
| result  |
+---------+--+
+---------+--+
No rows selected (0.101 seconds)



0: jdbc:hive2://hadoop-master:10000> show tables ;
+-----------------+--------------+--+
|    tableName    | isTemporary  |
+-----------------+--------------+--+
| test_boundary   | false        |
| test_boundary2  | false        |
+-----------------+--------------+--+
2 rows selected (0.02 seconds)


0: jdbc:hive2://hadoop-master:10000> load data local inpath 
'/home/server/Desktop/Test_Data1.csv' into table test_boundary2 ;
+---------+--+
| Result  |
+---------+--+
+---------+--+
No rows selected (0.201 seconds)


0: jdbc:hive2://hadoop-master:10000> select c3_Decimal from Test_Boundary where 
floor(c3_Decimal)=0.00 or floor(c3_Decimal) IS NULL ;
+-------------+--+
| c3_Decimal  |
+-------------+--+
+-------------+--+
No rows selected (0.315 seconds)


0: jdbc:hive2://hadoop-master:10000> select count(*) from Test_Boundary ;
+------+--+
| _c0  |
+------+--+
| 0    |
+------+--+


CarbonData 

0: jdbc:hive2://hadoop-master:10000> create table Test_Boundary (c1_int 
int,c2_Bigint Bigint,c3_Decimal Decimal(38,30),c4_double double,c5_string 
string,c6_Timestamp Timestamp,c7_Datatype_Desc string) STORED BY 
'org.apache.carbondata.format' ;
+---------+--+
| Result  |
+---------+--+
+---------+--+
No rows selected (0.535 seconds)
0: jdbc:hive2://hadoop-master:10000> select count(*) from Test_Boundary ;
+------+--+
| _c0  |
+------+--+
| 0    |
+------+--+
1 row selected (1.883 seconds)
 
hdfs://192.168.2.145:54310hdfs://192.168.2.145:54310/HDFS_URL/BabuStore/Data/Test_Data1.csv
 (state=,code=0)
0: jdbc:hive2://hadoop-master:10000> LOAD DATA INPATH 
'hdfs://192.168.2.145:54310/BabuStore/Data/Test_Data1.csv' INTO table 
Test_Boundary 
OPTIONS('DELIMITER'=',','QUOTECHAR'='','BAD_RECORDS_ACTION'='FORCE','FILEHEADER'='')
 ;
+---------+--+
| Result  |
+---------+--+
+---------+--+
No rows selected (2.436 seconds)


0: jdbc:hive2://hadoop-master:10000> select c3_Decimal from Test_Boundary where 
floor(c3_Decimal)=0.00 or floor(c3_Decimal) IS NULL ;
Error: org.apache.spark.SparkException: Job aborted due to stage failure: Task 
0 in stage 7.0 failed 4 times, most recent failure: Lost task 0.3 in stage 7.0 
(TID 16, hadoop-master): org.apache.spark.sql.AnalysisException: Decimal scale 
(0) cannot be greater than precision (-28).;
        at org.apache.spark.sql.types.PrecisionInfo.<init>(DecimalType.scala:32)
        at org.apache.spark.sql.types.DecimalType.<init>(DecimalType.scala:68)
        at 
org.apache.spark.sql.types.DecimalType$.bounded(DecimalType.scala:155)
        at org.apache.spark.sql.types.Decimal.floor(Decimal.scala:326)
        at 
org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificPredicate.eval(Unknown
 Source)
        at 
org.apache.spark.sql.catalyst.expressions.codegen.GeneratePredicate$$anonfun$create$2.apply(GeneratePredicate.scala:68)
        at 
org.apache.spark.sql.catalyst.expressions.codegen.GeneratePredicate$$anonfun$create$2.apply(GeneratePredicate.scala:68)
        at 
org.apache.spark.sql.execution.Filter$$anonfun$2$$anonfun$apply$2.apply(basicOperators.scala:74)
        at 
org.apache.spark.sql.execution.Filter$$anonfun$2$$anonfun$apply$2.apply(basicOperators.scala:72)
        at scala.collection.Iterator$$anon$14.hasNext(Iterator.scala:390)
        at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:327)
        at scala.collection.Iterator$class.foreach(Iterator.scala:727)
        at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
        at 
scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:48)
        at 
scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:103)
        at 
scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:47)
        at scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)
        at scala.collection.AbstractIterator.to(Iterator.scala:1157)
        at 
scala.collection.TraversableOnce$class.toBuffer(TraversableOnce.scala:265)
        at scala.collection.AbstractIterator.toBuffer(Iterator.scala:1157)
        at 
scala.collection.TraversableOnce$class.toArray(TraversableOnce.scala:252)
        at scala.collection.AbstractIterator.toArray(Iterator.scala:1157)
        at 
org.apache.spark.rdd.RDD$$anonfun$collect$1$$anonfun$12.apply(RDD.scala:927)
        at 
org.apache.spark.rdd.RDD$$anonfun$collect$1$$anonfun$12.apply(RDD.scala:927)
        at 
org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:1858)
        at 
org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:1858)
        at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:66)
        at org.apache.spark.scheduler.Task.run(Task.scala:89)
        at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:227)
        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)


PushUP_FILTER_Test_Boundary_TC065 : select c3_Decimal from Test_Boundary where 
floor(c3_Decimal)<=0.0 or floor(c3_Decimal) IS NOT NULL
select c3_Decimal from Test_Boundary where ceil(c3_Decimal)=0.0 or 
ceiling(c3_Decimal) IS NULL
PushUP_FILTER_Test_Boundary_TC085 select c3_Decimal from Test_Boundary where 
ceil(c3_Decimal)<=0.0 or ceiling(c3_Decimal) IS NOT NULL
PushUP_FILTER_Test_Boundary_TC088:select 
min(c1_int),max(c1_int),sum(c1_int),avg(c1_int) , count(c1_int), 
variance(c1_int) from Test_Boundary where rand(c1_int)=0.6201007799387834 or 
rand(c1_int)=0.45540022789662593




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

Reply via email to