You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Abhishek Girish (JIRA)" <ji...@apache.org> on 2017/03/29 01:20:41 UTC

[jira] [Created] (DRILL-5395) Query on MapR-DB table fails with NPE due to an issue with assignment logic

Abhishek Girish created DRILL-5395:
--------------------------------------

             Summary: Query on MapR-DB table fails with NPE due to an issue with assignment logic
                 Key: DRILL-5395
                 URL: https://issues.apache.org/jira/browse/DRILL-5395
             Project: Apache Drill
          Issue Type: Bug
          Components: Query Planning & Optimization, Storage - MapRDB
    Affects Versions: 1.9.0, 1.10.0
            Reporter: Abhishek Girish
            Assignee: Padma Penumarthy
             Fix For: 1.11.0


We uncovered this issue when working on DRILL-5394. 

The MapR-DB table in question had 5 tablets with skewed data distribution (~6 million rows). A partial WIP fix for DRILL-5394 caused the number of rows to be reported incorrectly (~300,000). 2 minor fragments were created (due to filter selectivity) for scanning the 5 tablets. And this resulted in an NPE, possibly related to an issue with assignment logic, that was now exposed. 

Representative query:
{code}
SELECT Convert_from(avail.customer, 'UTF8') AS ABC, 
       Convert_from(prop.customer, 'UTF8')  AS PQR 
FROM   (SELECT Convert_from(a.row_key, 'UTF8') 
               AS customer, 
               Cast(Convert_from(a.data .` l_discount ` , 'double_be') AS FLOAT) 
               AS availability 
        FROM   db.tpch_maprdb.lineitem_1 a 
        WHERE  Convert_from(a.row_key, 'UTF8') = '%004%') AS avail 
       join 
              (SELECT Convert_from(b.row_key, 'UTF8') 
                      AS customer, 
               Cast( 
       Convert_from(b.data .` l_discount ` , 'double_be') AS FLOAT) AS 
               availability 
        FROM   db.tpch_maprdb.lineitem_1 b 
        WHERE  Convert_from(b.row_key, 'UTF8') LIKE '%003%') AS prop 
         ON avail.customer = prop.customer; 
{code}
Error:
{code}
org.apache.drill.common.exceptions.UserException: SYSTEM ERROR: NullPointerException
{code}

Log attached. 



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