[
https://issues.apache.org/jira/browse/HIVE-1903?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12979035#action_12979035
]
Jean-Daniel Cryans commented on HIVE-1903:
------------------------------------------
Here it is:
{noformat}
CREATE EXTERNAL TABLE users(key int, userid int, username string, created int)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" =
":key,f:userid,f:nickname,f:created");
CREATE EXTERNAL TABLE users_level(key int, userid int, level int)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,f:userid,f:level");
SELECT year(from_unixtime(users.created)) AS year, level, count(users.userid)
AS num
FROM users JOIN users_level ON (users.userid = users_level.userid)
GROUP BY year(from_unixtime(users.created)), level;
{noformat}
> 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
> Assignee: John Sichi
> 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.