Jitendra Nath Pandey created HIVE-6511:
------------------------------------------

             Summary: casting from decimal to tinyint,smallint, int and bigint 
generates different result when vectorization is on
                 Key: HIVE-6511
                 URL: https://issues.apache.org/jira/browse/HIVE-6511
             Project: Hive
          Issue Type: Bug
            Reporter: Jitendra Nath Pandey
            Assignee: Jitendra Nath Pandey


select dc,cast(dc as int), cast(dc as smallint),cast(dc as tinyint) from 
vectortab10korc limit 20 generates following result when vectorization is 
enabled:
{code}
4619756289662.078125    -1628520834     -16770  126
1553532646710.316406    -1245514442     -2762   54
3367942487288.360352    688127224       -776    -8
4386447830839.337891    1286221623      12087   55
-3234165331139.458008   -54957251       27453   61
-488378613475.326172    1247658269      -16099  29
-493942492598.691406    -21253559       -19895  73
3101852523586.039062    886135874       23618   66
2544105595941.381836    1484956709      -23515  37
-3997512403067.0625     1102149509      30597   -123
-1183754978977.589355   1655994718      31070   94
1408783849655.676758    34576568        -26440  -72
-2993175106993.426758   417098319       27215   79
3004723551798.100586    -1753555402     -8650   54
1103792083527.786133    -14511544       -28088  72
469767055288.485352     1615620024      26552   -72
-1263700791098.294434   -980406074      12486   -58
-4244889766496.484375   -1462078048     30112   -96
-3962729491139.782715   1525323068      -27332  60
NULL    NULL    NULL    NULL
{code}

When vectorization is disabled, result looks like this:
{code}
4619756289662.078125    -1628520834     -16770  126
1553532646710.316406    -1245514442     -2762   54
3367942487288.360352    688127224       -776    -8
4386447830839.337891    1286221623      12087   55
-3234165331139.458008   -54957251       27453   61
-488378613475.326172    1247658269      -16099  29
-493942492598.691406    -21253558       -19894  74
3101852523586.039062    886135874       23618   66
2544105595941.381836    1484956709      -23515  37
-3997512403067.0625     1102149509      30597   -123
-1183754978977.589355   1655994719      31071   95
1408783849655.676758    34576567        -26441  -73
-2993175106993.426758   417098319       27215   79
3004723551798.100586    -1753555402     -8650   54
1103792083527.786133    -14511545       -28089  71
469767055288.485352     1615620024      26552   -72
-1263700791098.294434   -980406074      12486   -58
-4244889766496.484375   -1462078048     30112   -96
-3962729491139.782715   1525323069      -27331  61
NULL    NULL    NULL    NULL
{code}

This issue is visible only for certain decimal values. In above example, row 
7,11,12, and 15 generates different results.

vectortab10korc table schema:
{code}
t                       tinyint                 from deserializer   
si                      smallint                from deserializer   
i                       int                     from deserializer   
b                       bigint                  from deserializer   
f                       float                   from deserializer   
d                       double                  from deserializer   
dc                      decimal(38,18)          from deserializer   
bo                      boolean                 from deserializer   
s                       string                  from deserializer   
s2                      string                  from deserializer   
ts                      timestamp               from deserializer   
                 
# Detailed Table Information             
Database:               default                  
Owner:                  hrt_qa                   
CreateTime:             Tue Feb 25 21:54:28 UTC 2014     
LastAccessTime:         UNKNOWN                  
Protect Mode:           None                     
Retention:              0                        
Location:               
hdfs://hor13n26.gq1.ygridcore.net:8020/apps/hive/warehouse/vectortab10korc      
 
Table Type:             MANAGED_TABLE            
Table Parameters:                
        COLUMN_STATS_ACCURATE   true                
        numFiles                1                   
        numRows                 10000               
        rawDataSize             0                   
        totalSize               344748              
        transient_lastDdlTime   1393365281          
                 
# Storage Information            
SerDe Library:          org.apache.hadoop.hive.ql.io.orc.OrcSerde        
InputFormat:            org.apache.hadoop.hive.ql.io.orc.OrcInputFormat  
OutputFormat:           org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat        
 
Compressed:             No                       
Num Buckets:            -1                       
Bucket Columns:         []                       
Sort Columns:           []                       
Storage Desc Params:             
        serialization.format    1                   
Time taken: 0.196 seconds, Fetched: 41 row(s
{code}







--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to