Here are the steps -

-- Phoenix version - 4.2.2
-- CDH -- 5.3

-- SQLLINE
CREATE TABLE HIRES_SALTED( CLIENTID INTEGER NOT NULL, EMPID INTEGER NOT
NULL, NAME VARCHAR CONSTRAINT pk PRIMARY KEY(CLIENTID,EMPID))
SALT_BUCKETS=2;

UPSERT INTO HIRES_SALTED VALUES(10,100,'ABC');
UPSERT INTO HIRES_SALTED VALUES(11,101,'XYZ');

-- PIG
register '/opt/phoenix-4.2.2-bin/phoenix-pig-4.2.2.jar';
register '/opt/phoenix-4.2.2-bin/phoenix-4.2.2-client.jar';

raw = LOAD 'hbase://table/HIRES_SALTED' USING
org.apache.phoenix.pig.PhoenixHBaseLoader('localhost');
dump raw

Error -
2015-08-10 13:43:56,036 [main] ERROR org.apache.pig.tools.grunt.Grunt -
ERROR 1200: null
Details at logfile: /../pig_1439194425512.log

Pig Stack Trace
---------------
ERROR 1200: null

Failed to parse: null
        at
org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:198)
        at org.apache.pig.PigServer$Graph.validateQuery(PigServer.java:1648)
        at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:1621)
        at org.apache.pig.PigServer.registerQuery(PigServer.java:575)
        at
org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:1093)
        at
org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:501)
        at
org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:198)
        at
org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:173)
        at org.apache.pig.tools.grunt.Grunt.run(Grunt.java:69)
        at org.apache.pig.Main.run(Main.java:541)
        at org.apache.pig.Main.main(Main.java:156)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
Caused by: java.lang.NullPointerException
        at
org.apache.phoenix.pig.util.PhoenixPigSchemaUtil.getResourceSchema(PhoenixPigSchemaUtil.java:67)
        at
org.apache.phoenix.pig.PhoenixHBaseLoader.getSchema(PhoenixHBaseLoader.java:220)
        at
org.apache.pig.newplan.logical.relational.LOLoad.getSchemaFromMetaData(LOLoad.java:175)
        at
org.apache.pig.newplan.logical.relational.LOLoad.<init>(LOLoad.java:89)
        at
org.apache.pig.parser.LogicalPlanBuilder.buildLoadOp(LogicalPlanBuilder.java:853)
        at
org.apache.pig.parser.LogicalPlanGenerator.load_clause(LogicalPlanGenerator.java:3568)
        at
org.apache.pig.parser.LogicalPlanGenerator.op_clause(LogicalPlanGenerator.java:1625)
        at
org.apache.pig.parser.LogicalPlanGenerator.general_statement(LogicalPlanGenerator.java:1102)
        at
org.apache.pig.parser.LogicalPlanGenerator.statement(LogicalPlanGenerator.java:560)
        at
org.apache.pig.parser.LogicalPlanGenerator.query(LogicalPlanGenerator.java:421)
        at
org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:188)
        ... 15 more
================================================================================

If we create table with SALT everything works without any issue.

Can anyone please help ?


Many Thanks
Pari

On 10 August 2015 at 13:12, Pariksheet Barapatre <pbarapa...@gmail.com>
wrote:

> Hi Russell,
>
> below error I am getting in pig.log
> Failed to parse: null
>     at
> org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:198)
>     at org.apache.pig.PigServer$Graph.validateQuery(PigServer.java:1648)
>     at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:1621)
>     at org.apache.pig.PigServer.registerQuery(PigServer.java:575)
>     at
> org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:1093)
>     at
> org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:501)
>     at
> org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:198)
>     at
> org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:173)
>     at org.apache.pig.tools.grunt.Grunt.run(Grunt.java:69)
>     at org.apache.pig.Main.run(Main.java:541)
>     at org.apache.pig.Main.main(Main.java:156)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke(Method.java:606)
>     at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
> Caused by: java.lang.NullPointerException
>     at
> org.apache.phoenix.pig.util.PhoenixPigSchemaUtil.getResourceSchema(PhoenixPigSchemaUtil.java:67)
>     at
> org.apache.phoenix.pig.PhoenixHBaseLoader.getSchema(PhoenixHBaseLoader.java:220)
>     at
> org.apache.pig.newplan.logical.relational.LOLoad.getSchemaFromMetaData(LOLoad.java:175)
>     at
> org.apache.pig.newplan.logical.relational.LOLoad.<init>(LOLoad.java:89)
>     at
> org.apache.pig.parser.LogicalPlanBuilder.buildLoadOp(LogicalPlanBuilder.java:853)
>     at
> org.apache.pig.parser.LogicalPlanGenerator.load_clause(LogicalPlanGenerator.java:3568)
>     at
> org.apache.pig.parser.LogicalPlanGenerator.op_clause(LogicalPlanGenerator.java:1625)
>     at
> org.apache.pig.parser.LogicalPlanGenerator.general_statement(LogicalPlanGenerator.java:1102)
>     at
> org.apache.pig.parser.LogicalPlanGenerator.statement(LogicalPlanGenerator.java:560)
>     at
> org.apache.pig.parser.LogicalPlanGenerator.query(LogicalPlanGenerator.java:421)
>     at
> org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:188)
>     ... 15 more
>
> I am registering below two jars -
> register '/home/yumecorp/phoenix-4.2.0-bin/phoenix-pig-4.2.0.jar';
> register '/home/yumecorp/phoenix-4.2.0-bin/phoenix-4.2.0-client.jar';
>
> Thanks
> Pari
>
> On 10 August 2015 at 12:50, Russell Jurney <russell.jur...@gmail.com>
> wrote:
>
>> There shouldn't be a limitation, no. I've stored to/read from Phoenix
>> tables from Pig on CDH 5.
>>
>> Can you paste the error?
>>
>>
>> On Monday, August 10, 2015, Pariksheet Barapatre <pbarapa...@gmail.com>
>> wrote:
>>
>>> Hi All,
>>>
>>> I am trying to run Pig script on Phoenix table.
>>>
>>> I am using same example given in documentation.
>>>
>>> CREATE TABLE HIRES( CLIENTID INTEGER NOT NULL, EMPID INTEGER NOT NULL, NAME 
>>> VARCHAR CONSTRAINT pk PRIMARY KEY(CLIENTID,EMPID));
>>>
>>>
>>> raw = LOAD 'hbase://table/HIRES USING
>>> org.apache.phoenix.pig.PhoenixHBaseLoader('localhost')';
>>> grpd = GROUP raw BY CLIENTID;
>>> cnt = FOREACH grpd GENERATE group AS CLIENT,COUNT(raw);
>>> DUMP cnt;
>>>
>>> The code above works without any issue, but if I CREATE HIRES tables
>>> with SALTs script failed with QueryParse.Error.
>>>
>>> Is there any limitation of Pig integration with SALTED table.
>>>
>>>
>>>
>>> Cheers,
>>> Pari
>>>
>>
>>
>> --
>> Russell Jurney twitter.com/rjurney russell.jur...@gmail.com datasyndrome.
>> com
>>
>
>
>
> --
> Cheers,
> Pari
>



-- 
Cheers,
Pari

Reply via email to