[ 
https://issues.apache.org/jira/browse/HBASE-797?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-797:
------------------------

    Attachment: 797.patch

Perverse patch that tinkers with accessibility using reflection.  Though the 
two classes are in same package, somehow default access is not letting me get 
at default access members in super class Client.   I'd guess its that they are 
loaded by two different classloaders.  Patch as is does not work in local mode. 
 It does when running MR.  Digging.

> IllegalAccessError running RowCounter
> -------------------------------------
>
>                 Key: HBASE-797
>                 URL: https://issues.apache.org/jira/browse/HBASE-797
>             Project: Hadoop HBase
>          Issue Type: Bug
>            Reporter: stack
>             Fix For: 0.19.0
>
>         Attachments: 797.patch
>
>
> Below is from Billy Pearson up on the list:
> {code}
> Billy Pearson wrote:
> > I get this when I run RowCounter in the hbase jar
> >
> > java.lang.IllegalAccessError: tried to access method 
> > org.apache.hadoop.ipc.Client.incCount()V from class 
> > org.apache.hadoop.ipc.HBaseClient
> >        at org.apache.hadoop.ipc.HBaseClient.incCount(HBaseClient.java:39)
> >        at 
> > org.apache.hadoop.hbase.ipc.HbaseRPC$ClientCache.getClient(HbaseRPC.java:179)
> >        at 
> > org.apache.hadoop.hbase.ipc.HbaseRPC$ClientCache.access$200(HbaseRPC.java:156)
> >        at 
> > org.apache.hadoop.hbase.ipc.HbaseRPC$Invoker.<init>(HbaseRPC.java:224)
> >        at org.apache.hadoop.hbase.ipc.HbaseRPC.getProxy(HbaseRPC.java:336)
> >        at org.apache.hadoop.hbase.ipc.HbaseRPC.getProxy(HbaseRPC.java:327)
> >        at org.apache.hadoop.hbase.ipc.HbaseRPC.getProxy(HbaseRPC.java:364)
> >        at 
> > org.apache.hadoop.hbase.ipc.HbaseRPC.waitForProxy(HbaseRPC.java:302)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getHRegionConnection(HConnectionManager.java:764)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRootRegion(HConnectionManager.java:815)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:457)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:431)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegionInMeta(HConnectionManager.java:510)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:467)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:431)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegionInMeta(HConnectionManager.java:510)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:471)
> >        at 
> > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:431)
> >        at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:125)
> >        at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:110)
> >        at 
> > org.apache.hadoop.hbase.mapred.TableInputFormat.configure(TableInputFormat.java:60)
> >        at 
> > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:58)
> >        at 
> > org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:82)
> >        at org.apache.hadoop.mapred.JobConf.getInputFormat(JobConf.java:400)
> >        at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:705)
> >        at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:973)
> >        at com.compspy.mapred.RowCounter.run(RowCounter.java:111)
> >        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
> >        at com.compspy.mapred.RowCounter.main(RowCounter.java:126)
> >        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >        at 
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >        at 
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >        at java.lang.reflect.Method.invoke(Method.java:597)
> >        at 
> > org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
> >        at 
> > org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
> >        at com.compspy.mapred.Driver.main(Driver.java:24)
> >        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >        at 
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >        at 
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >        at java.lang.reflect.Method.invoke(Method.java:597)
> >        at org.apache.hadoop.util.RunJar.main(RunJar.java:155)
> >        at org.apache.hadoop.mapred.JobShell.run(JobShell.java:194)
> >        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
> >        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
> >        at org.apache.hadoop.mapred.JobShell.main(JobShell.java:220)
> {code}
> Sebastien Rainville just had a related issue.  J-D investigating found a 
> workaround.  Adding hbase.jar to 
> $HADOOP_HOME/conf/hadoop-env.sh#HADOOP_CLASSPATH

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

Reply via email to