Hi! Please help me with resolving this problem. I am porting our Pig/Phoenix/HBase project to all newer versions, but this one thing is blocking me.
Observed When running Phoenix 4.6.0 and HBase 0.98.12. I have also tried with several other variations of Phoenix 4.x and HBase 0.98.x . Using PhoenixHBaseStorage() to store records into a Phoenix table works just fine. I can query the records fine with sqlline.py . All indications are that I have my jars and class paths set up correctly. But I can't load them in Pig using PhoenixHBaseLoader(). Easiest way to duplicate: Create any empty table with sqlline.py like this: create table if not exists TEST (NUM integer not null, constraint NUM primary key (NUM)); Run this pig script: REGISTER phoenix-4.6.0-HBase-0.98-client.jar; TEST = load 'hbase://query/select * from TEST' using org.apache.phoenix.pig.PhoenixHBaseLoader('localhost'); You will get an error like this: 2015-10-26 22:02:17,537 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2998: Unhandled internal error. org.apache.hadoop.hbase.client.Mutation.getFamilyCellMap()Ljava/util/NavigableMap; Details at logfile: /mnt/var/log/apps/pig.log /mnt/var/log/apps/pig.log will look like this: Pig Stack Trace --------------- ERROR 2998: Unhandled internal error. org.apache.hadoop.hbase.client.Mutation.getFamilyCellMap()Ljava/util/NavigableMap; java.lang.NoSuchMethodError: org.apache.hadoop.hbase.client.Mutation.getFamilyCellMap()Ljava/util/NavigableMap; at org.apache.phoenix.schema.PTableImpl$PRowImpl.removeIfPresent(PTableImpl.java:726) at org.apache.phoenix.schema.PTableImpl$PRowImpl.setValue(PTableImpl.java:758) at org.apache.phoenix.execute.MutationState.addRowMutations(MutationState.java:264) at org.apache.phoenix.execute.MutationState.access$200(MutationState.java:92) at org.apache.phoenix.execute.MutationState$2.init(MutationState.java:326) at org.apache.phoenix.execute.MutationState$2.<init>(MutationState.java:323) at org.apache.phoenix.execute.MutationState.toMutations(MutationState.java:321) at org.apache.phoenix.execute.MutationState.toMutations(MutationState.java:311) at org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:1946) at org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:785) at org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:186) at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:319) at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:311) at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) at org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:309) at org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:1368) at org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:1929) at org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:1898) at org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:78) at org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:1898) at org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:180) at org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:132) at org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:151) at java.sql.DriverManager.getConnection(DriverManager.java:571) at java.sql.DriverManager.getConnection(DriverManager.java:187) at org.apache.phoenix.mapreduce.util.ConnectionUtil.getConnection(ConnectionUtil.java:98) at org.apache.phoenix.mapreduce.util.ConnectionUtil.getInputConnection(ConnectionUtil.java:57) at org.apache.phoenix.mapreduce.util.ConnectionUtil.getInputConnection(ConnectionUtil.java:45) at org.apache.phoenix.pig.util.QuerySchemaParserFunction.apply(QuerySchemaParserFunction.java:62) at org.apache.phoenix.pig.PhoenixHBaseLoader.initializePhoenixPigConfiguration(PhoenixHBaseLoader.java:142) at org.apache.phoenix.pig.PhoenixHBaseLoader.getSchema(PhoenixHBaseLoader.java:229) 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:885) 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) at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1712) at org.apache.pig.PigServer$Graph.access$000(PigServer.java:1420) at org.apache.pig.PigServer.parseAndBuild(PigServer.java:364) at org.apache.pig.PigServer.executeBatch(PigServer.java:389) at org.apache.pig.PigServer.executeBatch(PigServer.java:375) at org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:170) at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:232) at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:203) at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:81) at org.apache.pig.Main.run(Main.java:608) 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) Thank you, Steve