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)