hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jean-Daniel Cryans (JIRA)" <j...@apache.org>
Subject [jira] Created: (HIVE-1903) Can't join HBase tables if one's name is the beginning of the other
Date Fri, 07 Jan 2011 23:51:45 GMT
Can't join HBase tables if one's name is the beginning of the other
-------------------------------------------------------------------

                 Key: HIVE-1903
                 URL: https://issues.apache.org/jira/browse/HIVE-1903
             Project: Hive
          Issue Type: Bug
            Reporter: Jean-Daniel Cryans
             Fix For: 0.7.0


I tried joining two tables, let's call them "table" and "table_a", but I'm seeing an array
of errors such as this:

{noformat}
java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
	at java.util.ArrayList.RangeCheck(ArrayList.java:547)
	at java.util.ArrayList.get(ArrayList.java:322)
	at org.apache.hadoop.hive.hbase.HiveHBaseTableInputFormat.getRecordReader(HiveHBaseTableInputFormat.java:118)
	at org.apache.hadoop.hive.ql.io.HiveInputFormat.getRecordReader(HiveInputFormat.java:231)
{noformat}

The reason is that HiveInputFormat.pushProjectionsAndFilters matches the aliases with startsWith
so in my case the mappers for "table_a" were getting the columns from "table" as well as its
own (and since it had less column, it was trying to get one too far in the array).

I don't know if just changing it to "equals" fill fix it, my guess is it won't, since it may
break RCFiles.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message