You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Christoph Bauer (JIRA)" <ji...@apache.org> on 2012/12/28 13:06:12 UTC

[jira] [Created] (PIG-3108) HBaseStorage returns empty maps when mixing wildcard- with other columns

Christoph Bauer created PIG-3108:
------------------------------------

             Summary: HBaseStorage returns empty maps when mixing wildcard- with other columns
                 Key: PIG-3108
                 URL: https://issues.apache.org/jira/browse/PIG-3108
             Project: Pig
          Issue Type: Bug
    Affects Versions: 0.10.0, 0.9.2, 0.9.1, 0.9.0, 0.11, 0.10.1, 0.12
            Reporter: Christoph Bauer


Consider the following:
A and B should be the same (with different order, of course).
{code}
/*
in hbase shell:

create 'pigtest', 'pig'
put 'pigtest' , '1', 'pig:name', 'A'
put 'pigtest' , '1', 'pig:has_legs', 'true'
put 'pigtest' , '1', 'pig:has_ribs', 'true'
*/
A = LOAD 'hbase://pigtest' USING org.apache.pig.backend.hadoop.hbase.HBaseStorage('pig:name pig:has*') AS (name:chararray,parts);

B = LOAD 'hbase://pigtest' USING org.apache.pig.backend.hadoop.hbase.HBaseStorage('pig:has* pig:name') AS (parts,name:chararray);

dump A;
dump B;
{code}

This is due to a bug in setLocation and initScan.
For _A_ 
# scan.addColumn(pig,name); // for 'pig:name'
# scan.addFamily(pig); // for the 'pig:has*'

So that's silently right.

But for _B_
# scan.addFamily(pig)
# scan.addColumn(pig,name)

will override the first call to addFamily, because you cannot mix them on the same family.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira