You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hbase.apache.org by Jean-Marc Spaggiari <je...@spaggiari.org> on 2013/12/23 17:11:09 UTC
RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Any idea why I'm getting this?
Error: java.lang.ClassNotFoundException:
com.google.common.base.Preconditions
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at
org.apache.hadoop.hbase.util.ClassLoaderBase.<init>(ClassLoaderBase.java:58)
at
org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:87)
at org.apache.hadoop.hbase.util.Classes.<clinit>(Classes.java:41)
at org.apache.hadoop.hbase.client.Scan.readFields(Scan.java:624)
at
org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.convertStringToScan(TableMapReduceUtil.java:379)
at
org.apache.hadoop.hbase.mapreduce.TableInputFormat.setConf(TableInputFormat.java:107)
at
org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
at
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
at org.apache.hadoop.mapred.Child.main(Child.java:249)
Initially I tought it was because of the guava lib. So I ugraded it to 14,
same result. I tought then it was because I was using a very old 1.0.3
hadoop version so I upgraded it to 1.2.1 (went very well, pretty simple).
Still same issue. (Yes I copied hadoop jar to hbase lib).
This missing class is into guava 11.0.2 jar. My own MR jobs are running
well, HBase is running well, et. Just RowCounter is not working.
Any idea?
Thanks,
JM
Re: RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Posted by Jean-Marc Spaggiari <je...@spaggiari.org>.
Hey, Seems that it's the right issue. I reverted back to previous Guava
version and this seems to be fixed.
But I found something else too
I had an old "target" directory from a previous HBase version in my HBase
directory and that caused some issues with the last shell.
It seems to have fixed my rowcounter too!!! Will see if it fixes also my
AbstractMethodErrorexception issue.
Thanks!
JM
2013/12/25 Ted Yu <yu...@gmail.com>
> This is related:
> HBASE-10174 Back port HBASE-9667 'NullOutputStream removed from Guava 15'
> to 0.94
>
> Cheers
>
>
> On Wed, Dec 25, 2013 at 7:55 AM, Jean-Marc Spaggiari <
> jean-marc@spaggiari.org> wrote:
>
> > I also got those one in the logs when manually moving a region:
> > Caused by: java.lang.ClassNotFoundException:
> > com.google.common.io.NullOutputStream
> > at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> > at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> > at java.security.AccessController.doPrivileged(Native Method)
> > at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> > ... 18 more
> >
> >
> > I have extracted 0.94.15 from the JARs. I'm not getting where all of this
> > is coming from... I will look at that today...
> >
> >
> > 2013/12/23 lars hofhansl <la...@apache.org>
> >
> > > I'd bet this is the same issue that got you the strange
> > > AbstractMethodErrorexception you've seen before.
> > >
> > > Checking the code, we do not explicitly set
> > > com.google.common.base.Preconditions as dependency, and we probably
> > should,
> > > but we com.google.common.base.Function, which is in the same jar.
> > >
> > > -- Lars
> > >
> > >
> > >
> > > ________________________________
> > > From: Jean-Marc Spaggiari <je...@spaggiari.org>
> > > To: user <us...@hbase.apache.org>
> > > Sent: Monday, December 23, 2013 6:06 PM
> > > Subject: Re: RowCounter ClassNotFoundException:
> > > com.google.common.base.Preconditions
> > >
> > >
> > > Did some investigations. Strange.
> > >
> > > ClassLoader parent = Classes.class.getClassLoader();
> > >
> > > Returns null....
> > >
> > > Can this be related to the JDK I use? (1.7.0_45)
> > >
> > >
> > >
> > > 2013/12/23 Jean-Marc Spaggiari <je...@spaggiari.org>
> > >
> > > > I'm running HBase 0.94.15.
> > > >
> > > > time /home/hadoop/hadoop-1.2.1/bin/hadoop jar
> > > > /home/hbase/hbase-0.94.3/hbase-0.94.15.jar rowcounter
> > > > -Dmapred.map.tasks.speculative.execution=false
> > > > -Dhbase.client.scanner.caching=100 page_proposed
> > > >
> > > > I also tried to copy the guava jar into hadoop lib directory with no
> > > > success.
> > > >
> > > > I also tried with:
> > > > export HADOOP_CLASSPATH=`/home/hbase/hbase-0.94.3/bin/hbase
> > > > classpath`:`/home/hadoop/hadoop-1.2.1/bin/hadoop classpath`:.
> > > >
> > > > Same result.
> > > >
> > > > My folder is called 0.94.3 because I never changed its name into my
> > > > scripts, but it's 0.94.15 inside of it...
> > > >
> > > > JM
> > > >
> > > >
> > > > 2013/12/23 Ted Yu <yu...@gmail.com>
> > > >
> > > >> Which version of HBase do you use ?
> > > >>
> > > >> Can you show us the command line for RowCounter ?
> > > >>
> > > >> Thanks
> > > >>
> > > >>
> > > >> On Mon, Dec 23, 2013 at 8:11 AM, Jean-Marc Spaggiari <
> > > >> jean-marc@spaggiari.org> wrote:
> > > >>
> > > >> > Any idea why I'm getting this?
> > > >> >
> > > >> > Error: java.lang.ClassNotFoundException:
> > > >> > com.google.common.base.Preconditions
> > > >> > at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> > > >> > at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> > > >> > at java.security.AccessController.doPrivileged(Native Method)
> > > >> > at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> > > >> > at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
> > > >> > at
> sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> > > >> > at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
> > > >> > at
> > > >> >
> > > >> >
> > > >>
> > >
> >
> org.apache.hadoop.hbase.util.ClassLoaderBase.<init>(ClassLoaderBase.java:58)
> > > >> > at
> > > >> >
> > > >> >
> > > >>
> > >
> >
> org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:87)
> > > >> > at
> > org.apache.hadoop.hbase.util.Classes.<clinit>(Classes.java:41)
> > > >> > at
> org.apache.hadoop.hbase.client.Scan.readFields(Scan.java:624)
> > > >> > at
> > > >> >
> > > >> >
> > > >>
> > >
> >
> org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.convertStringToScan(TableMapReduceUtil.java:379)
> > > >> > at
> > > >> >
> > > >> >
> > > >>
> > >
> >
> org.apache.hadoop.hbase.mapreduce.TableInputFormat.setConf(TableInputFormat.java:107)
> > > >> > at
> > > >> >
> > > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
> > > >> > at
> > > >> >
> > > >> >
> > > >>
> > >
> >
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
> > > >> > at
> > org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
> > > >> > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
> > > >> > at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
> > > >> > at java.security.AccessController.doPrivileged(Native Method)
> > > >> > at javax.security.auth.Subject.doAs(Subject.java:415)
> > > >> > at
> > > >> >
> > > >> >
> > > >>
> > >
> >
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
> > > >> > at org.apache.hadoop.mapred.Child.main(Child.java:249)
> > > >> >
> > > >> >
> > > >> > Initially I tought it was because of the guava lib. So I ugraded
> it
> > to
> > > >> 14,
> > > >> > same result. I tought then it was because I was using a very old
> > 1.0.3
> > > >> > hadoop version so I upgraded it to 1.2.1 (went very well, pretty
> > > >> simple).
> > > >> > Still same issue. (Yes I copied hadoop jar to hbase lib).
> > > >> >
> > > >> > This missing class is into guava 11.0.2 jar. My own MR jobs are
> > > running
> > > >> > well, HBase is running well, et. Just RowCounter is not working.
> > > >> >
> > > >> > Any idea?
> > > >> >
> > > >> > Thanks,
> > > >> >
> > > >> > JM
> > > >> >
> > > >>
> > > >
> > > >
> > >
> >
>
Re: RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Posted by Ted Yu <yu...@gmail.com>.
This is related:
HBASE-10174 Back port HBASE-9667 'NullOutputStream removed from Guava 15'
to 0.94
Cheers
On Wed, Dec 25, 2013 at 7:55 AM, Jean-Marc Spaggiari <
jean-marc@spaggiari.org> wrote:
> I also got those one in the logs when manually moving a region:
> Caused by: java.lang.ClassNotFoundException:
> com.google.common.io.NullOutputStream
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> ... 18 more
>
>
> I have extracted 0.94.15 from the JARs. I'm not getting where all of this
> is coming from... I will look at that today...
>
>
> 2013/12/23 lars hofhansl <la...@apache.org>
>
> > I'd bet this is the same issue that got you the strange
> > AbstractMethodErrorexception you've seen before.
> >
> > Checking the code, we do not explicitly set
> > com.google.common.base.Preconditions as dependency, and we probably
> should,
> > but we com.google.common.base.Function, which is in the same jar.
> >
> > -- Lars
> >
> >
> >
> > ________________________________
> > From: Jean-Marc Spaggiari <je...@spaggiari.org>
> > To: user <us...@hbase.apache.org>
> > Sent: Monday, December 23, 2013 6:06 PM
> > Subject: Re: RowCounter ClassNotFoundException:
> > com.google.common.base.Preconditions
> >
> >
> > Did some investigations. Strange.
> >
> > ClassLoader parent = Classes.class.getClassLoader();
> >
> > Returns null....
> >
> > Can this be related to the JDK I use? (1.7.0_45)
> >
> >
> >
> > 2013/12/23 Jean-Marc Spaggiari <je...@spaggiari.org>
> >
> > > I'm running HBase 0.94.15.
> > >
> > > time /home/hadoop/hadoop-1.2.1/bin/hadoop jar
> > > /home/hbase/hbase-0.94.3/hbase-0.94.15.jar rowcounter
> > > -Dmapred.map.tasks.speculative.execution=false
> > > -Dhbase.client.scanner.caching=100 page_proposed
> > >
> > > I also tried to copy the guava jar into hadoop lib directory with no
> > > success.
> > >
> > > I also tried with:
> > > export HADOOP_CLASSPATH=`/home/hbase/hbase-0.94.3/bin/hbase
> > > classpath`:`/home/hadoop/hadoop-1.2.1/bin/hadoop classpath`:.
> > >
> > > Same result.
> > >
> > > My folder is called 0.94.3 because I never changed its name into my
> > > scripts, but it's 0.94.15 inside of it...
> > >
> > > JM
> > >
> > >
> > > 2013/12/23 Ted Yu <yu...@gmail.com>
> > >
> > >> Which version of HBase do you use ?
> > >>
> > >> Can you show us the command line for RowCounter ?
> > >>
> > >> Thanks
> > >>
> > >>
> > >> On Mon, Dec 23, 2013 at 8:11 AM, Jean-Marc Spaggiari <
> > >> jean-marc@spaggiari.org> wrote:
> > >>
> > >> > Any idea why I'm getting this?
> > >> >
> > >> > Error: java.lang.ClassNotFoundException:
> > >> > com.google.common.base.Preconditions
> > >> > at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> > >> > at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> > >> > at java.security.AccessController.doPrivileged(Native Method)
> > >> > at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> > >> > at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
> > >> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> > >> > at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
> > >> > at
> > >> >
> > >> >
> > >>
> >
> org.apache.hadoop.hbase.util.ClassLoaderBase.<init>(ClassLoaderBase.java:58)
> > >> > at
> > >> >
> > >> >
> > >>
> >
> org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:87)
> > >> > at
> org.apache.hadoop.hbase.util.Classes.<clinit>(Classes.java:41)
> > >> > at org.apache.hadoop.hbase.client.Scan.readFields(Scan.java:624)
> > >> > at
> > >> >
> > >> >
> > >>
> >
> org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.convertStringToScan(TableMapReduceUtil.java:379)
> > >> > at
> > >> >
> > >> >
> > >>
> >
> org.apache.hadoop.hbase.mapreduce.TableInputFormat.setConf(TableInputFormat.java:107)
> > >> > at
> > >> >
> > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
> > >> > at
> > >> >
> > >> >
> > >>
> >
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
> > >> > at
> org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
> > >> > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
> > >> > at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
> > >> > at java.security.AccessController.doPrivileged(Native Method)
> > >> > at javax.security.auth.Subject.doAs(Subject.java:415)
> > >> > at
> > >> >
> > >> >
> > >>
> >
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
> > >> > at org.apache.hadoop.mapred.Child.main(Child.java:249)
> > >> >
> > >> >
> > >> > Initially I tought it was because of the guava lib. So I ugraded it
> to
> > >> 14,
> > >> > same result. I tought then it was because I was using a very old
> 1.0.3
> > >> > hadoop version so I upgraded it to 1.2.1 (went very well, pretty
> > >> simple).
> > >> > Still same issue. (Yes I copied hadoop jar to hbase lib).
> > >> >
> > >> > This missing class is into guava 11.0.2 jar. My own MR jobs are
> > running
> > >> > well, HBase is running well, et. Just RowCounter is not working.
> > >> >
> > >> > Any idea?
> > >> >
> > >> > Thanks,
> > >> >
> > >> > JM
> > >> >
> > >>
> > >
> > >
> >
>
Re: RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Posted by Jean-Marc Spaggiari <je...@spaggiari.org>.
I also got those one in the logs when manually moving a region:
Caused by: java.lang.ClassNotFoundException:
com.google.common.io.NullOutputStream
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 18 more
I have extracted 0.94.15 from the JARs. I'm not getting where all of this
is coming from... I will look at that today...
2013/12/23 lars hofhansl <la...@apache.org>
> I'd bet this is the same issue that got you the strange
> AbstractMethodErrorexception you've seen before.
>
> Checking the code, we do not explicitly set
> com.google.common.base.Preconditions as dependency, and we probably should,
> but we com.google.common.base.Function, which is in the same jar.
>
> -- Lars
>
>
>
> ________________________________
> From: Jean-Marc Spaggiari <je...@spaggiari.org>
> To: user <us...@hbase.apache.org>
> Sent: Monday, December 23, 2013 6:06 PM
> Subject: Re: RowCounter ClassNotFoundException:
> com.google.common.base.Preconditions
>
>
> Did some investigations. Strange.
>
> ClassLoader parent = Classes.class.getClassLoader();
>
> Returns null....
>
> Can this be related to the JDK I use? (1.7.0_45)
>
>
>
> 2013/12/23 Jean-Marc Spaggiari <je...@spaggiari.org>
>
> > I'm running HBase 0.94.15.
> >
> > time /home/hadoop/hadoop-1.2.1/bin/hadoop jar
> > /home/hbase/hbase-0.94.3/hbase-0.94.15.jar rowcounter
> > -Dmapred.map.tasks.speculative.execution=false
> > -Dhbase.client.scanner.caching=100 page_proposed
> >
> > I also tried to copy the guava jar into hadoop lib directory with no
> > success.
> >
> > I also tried with:
> > export HADOOP_CLASSPATH=`/home/hbase/hbase-0.94.3/bin/hbase
> > classpath`:`/home/hadoop/hadoop-1.2.1/bin/hadoop classpath`:.
> >
> > Same result.
> >
> > My folder is called 0.94.3 because I never changed its name into my
> > scripts, but it's 0.94.15 inside of it...
> >
> > JM
> >
> >
> > 2013/12/23 Ted Yu <yu...@gmail.com>
> >
> >> Which version of HBase do you use ?
> >>
> >> Can you show us the command line for RowCounter ?
> >>
> >> Thanks
> >>
> >>
> >> On Mon, Dec 23, 2013 at 8:11 AM, Jean-Marc Spaggiari <
> >> jean-marc@spaggiari.org> wrote:
> >>
> >> > Any idea why I'm getting this?
> >> >
> >> > Error: java.lang.ClassNotFoundException:
> >> > com.google.common.base.Preconditions
> >> > at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> >> > at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> >> > at java.security.AccessController.doPrivileged(Native Method)
> >> > at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> >> > at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
> >> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> >> > at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
> >> > at
> >> >
> >> >
> >>
> org.apache.hadoop.hbase.util.ClassLoaderBase.<init>(ClassLoaderBase.java:58)
> >> > at
> >> >
> >> >
> >>
> org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:87)
> >> > at org.apache.hadoop.hbase.util.Classes.<clinit>(Classes.java:41)
> >> > at org.apache.hadoop.hbase.client.Scan.readFields(Scan.java:624)
> >> > at
> >> >
> >> >
> >>
> org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.convertStringToScan(TableMapReduceUtil.java:379)
> >> > at
> >> >
> >> >
> >>
> org.apache.hadoop.hbase.mapreduce.TableInputFormat.setConf(TableInputFormat.java:107)
> >> > at
> >> >
> org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
> >> > at
> >> >
> >> >
> >>
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
> >> > at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
> >> > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
> >> > at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
> >> > at java.security.AccessController.doPrivileged(Native Method)
> >> > at javax.security.auth.Subject.doAs(Subject.java:415)
> >> > at
> >> >
> >> >
> >>
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
> >> > at org.apache.hadoop.mapred.Child.main(Child.java:249)
> >> >
> >> >
> >> > Initially I tought it was because of the guava lib. So I ugraded it to
> >> 14,
> >> > same result. I tought then it was because I was using a very old 1.0.3
> >> > hadoop version so I upgraded it to 1.2.1 (went very well, pretty
> >> simple).
> >> > Still same issue. (Yes I copied hadoop jar to hbase lib).
> >> >
> >> > This missing class is into guava 11.0.2 jar. My own MR jobs are
> running
> >> > well, HBase is running well, et. Just RowCounter is not working.
> >> >
> >> > Any idea?
> >> >
> >> > Thanks,
> >> >
> >> > JM
> >> >
> >>
> >
> >
>
Re: RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Posted by lars hofhansl <la...@apache.org>.
I'd bet this is the same issue that got you the strange AbstractMethodErrorexception you've seen before.
Checking the code, we do not explicitly set com.google.common.base.Preconditions as dependency, and we probably should, but we com.google.common.base.Function, which is in the same jar.
-- Lars
________________________________
From: Jean-Marc Spaggiari <je...@spaggiari.org>
To: user <us...@hbase.apache.org>
Sent: Monday, December 23, 2013 6:06 PM
Subject: Re: RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Did some investigations. Strange.
ClassLoader parent = Classes.class.getClassLoader();
Returns null....
Can this be related to the JDK I use? (1.7.0_45)
2013/12/23 Jean-Marc Spaggiari <je...@spaggiari.org>
> I'm running HBase 0.94.15.
>
> time /home/hadoop/hadoop-1.2.1/bin/hadoop jar
> /home/hbase/hbase-0.94.3/hbase-0.94.15.jar rowcounter
> -Dmapred.map.tasks.speculative.execution=false
> -Dhbase.client.scanner.caching=100 page_proposed
>
> I also tried to copy the guava jar into hadoop lib directory with no
> success.
>
> I also tried with:
> export HADOOP_CLASSPATH=`/home/hbase/hbase-0.94.3/bin/hbase
> classpath`:`/home/hadoop/hadoop-1.2.1/bin/hadoop classpath`:.
>
> Same result.
>
> My folder is called 0.94.3 because I never changed its name into my
> scripts, but it's 0.94.15 inside of it...
>
> JM
>
>
> 2013/12/23 Ted Yu <yu...@gmail.com>
>
>> Which version of HBase do you use ?
>>
>> Can you show us the command line for RowCounter ?
>>
>> Thanks
>>
>>
>> On Mon, Dec 23, 2013 at 8:11 AM, Jean-Marc Spaggiari <
>> jean-marc@spaggiari.org> wrote:
>>
>> > Any idea why I'm getting this?
>> >
>> > Error: java.lang.ClassNotFoundException:
>> > com.google.common.base.Preconditions
>> > at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
>> > at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>> > at java.security.AccessController.doPrivileged(Native Method)
>> > at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>> > at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
>> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>> > at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
>> > at
>> >
>> >
>> org.apache.hadoop.hbase.util.ClassLoaderBase.<init>(ClassLoaderBase.java:58)
>> > at
>> >
>> >
>> org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:87)
>> > at org.apache.hadoop.hbase.util.Classes.<clinit>(Classes.java:41)
>> > at org.apache.hadoop.hbase.client.Scan.readFields(Scan.java:624)
>> > at
>> >
>> >
>> org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.convertStringToScan(TableMapReduceUtil.java:379)
>> > at
>> >
>> >
>> org.apache.hadoop.hbase.mapreduce.TableInputFormat.setConf(TableInputFormat.java:107)
>> > at
>> > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
>> > at
>> >
>> >
>> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
>> > at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
>> > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
>> > at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
>> > at java.security.AccessController.doPrivileged(Native Method)
>> > at javax.security.auth.Subject.doAs(Subject.java:415)
>> > at
>> >
>> >
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
>> > at org.apache.hadoop.mapred.Child.main(Child.java:249)
>> >
>> >
>> > Initially I tought it was because of the guava lib. So I ugraded it to
>> 14,
>> > same result. I tought then it was because I was using a very old 1.0.3
>> > hadoop version so I upgraded it to 1.2.1 (went very well, pretty
>> simple).
>> > Still same issue. (Yes I copied hadoop jar to hbase lib).
>> >
>> > This missing class is into guava 11.0.2 jar. My own MR jobs are running
>> > well, HBase is running well, et. Just RowCounter is not working.
>> >
>> > Any idea?
>> >
>> > Thanks,
>> >
>> > JM
>> >
>>
>
>
Re: RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Posted by Jean-Marc Spaggiari <je...@spaggiari.org>.
Did some investigations. Strange.
ClassLoader parent = Classes.class.getClassLoader();
Returns null....
Can this be related to the JDK I use? (1.7.0_45)
2013/12/23 Jean-Marc Spaggiari <je...@spaggiari.org>
> I'm running HBase 0.94.15.
>
> time /home/hadoop/hadoop-1.2.1/bin/hadoop jar
> /home/hbase/hbase-0.94.3/hbase-0.94.15.jar rowcounter
> -Dmapred.map.tasks.speculative.execution=false
> -Dhbase.client.scanner.caching=100 page_proposed
>
> I also tried to copy the guava jar into hadoop lib directory with no
> success.
>
> I also tried with:
> export HADOOP_CLASSPATH=`/home/hbase/hbase-0.94.3/bin/hbase
> classpath`:`/home/hadoop/hadoop-1.2.1/bin/hadoop classpath`:.
>
> Same result.
>
> My folder is called 0.94.3 because I never changed its name into my
> scripts, but it's 0.94.15 inside of it...
>
> JM
>
>
> 2013/12/23 Ted Yu <yu...@gmail.com>
>
>> Which version of HBase do you use ?
>>
>> Can you show us the command line for RowCounter ?
>>
>> Thanks
>>
>>
>> On Mon, Dec 23, 2013 at 8:11 AM, Jean-Marc Spaggiari <
>> jean-marc@spaggiari.org> wrote:
>>
>> > Any idea why I'm getting this?
>> >
>> > Error: java.lang.ClassNotFoundException:
>> > com.google.common.base.Preconditions
>> > at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
>> > at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>> > at java.security.AccessController.doPrivileged(Native Method)
>> > at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>> > at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
>> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>> > at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
>> > at
>> >
>> >
>> org.apache.hadoop.hbase.util.ClassLoaderBase.<init>(ClassLoaderBase.java:58)
>> > at
>> >
>> >
>> org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:87)
>> > at org.apache.hadoop.hbase.util.Classes.<clinit>(Classes.java:41)
>> > at org.apache.hadoop.hbase.client.Scan.readFields(Scan.java:624)
>> > at
>> >
>> >
>> org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.convertStringToScan(TableMapReduceUtil.java:379)
>> > at
>> >
>> >
>> org.apache.hadoop.hbase.mapreduce.TableInputFormat.setConf(TableInputFormat.java:107)
>> > at
>> > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
>> > at
>> >
>> >
>> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
>> > at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
>> > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
>> > at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
>> > at java.security.AccessController.doPrivileged(Native Method)
>> > at javax.security.auth.Subject.doAs(Subject.java:415)
>> > at
>> >
>> >
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
>> > at org.apache.hadoop.mapred.Child.main(Child.java:249)
>> >
>> >
>> > Initially I tought it was because of the guava lib. So I ugraded it to
>> 14,
>> > same result. I tought then it was because I was using a very old 1.0.3
>> > hadoop version so I upgraded it to 1.2.1 (went very well, pretty
>> simple).
>> > Still same issue. (Yes I copied hadoop jar to hbase lib).
>> >
>> > This missing class is into guava 11.0.2 jar. My own MR jobs are running
>> > well, HBase is running well, et. Just RowCounter is not working.
>> >
>> > Any idea?
>> >
>> > Thanks,
>> >
>> > JM
>> >
>>
>
>
Re: RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Posted by Jean-Marc Spaggiari <je...@spaggiari.org>.
I'm running HBase 0.94.15.
time /home/hadoop/hadoop-1.2.1/bin/hadoop jar
/home/hbase/hbase-0.94.3/hbase-0.94.15.jar rowcounter
-Dmapred.map.tasks.speculative.execution=false
-Dhbase.client.scanner.caching=100 page_proposed
I also tried to copy the guava jar into hadoop lib directory with no
success.
I also tried with:
export HADOOP_CLASSPATH=`/home/hbase/hbase-0.94.3/bin/hbase
classpath`:`/home/hadoop/hadoop-1.2.1/bin/hadoop classpath`:.
Same result.
My folder is called 0.94.3 because I never changed its name into my
scripts, but it's 0.94.15 inside of it...
JM
2013/12/23 Ted Yu <yu...@gmail.com>
> Which version of HBase do you use ?
>
> Can you show us the command line for RowCounter ?
>
> Thanks
>
>
> On Mon, Dec 23, 2013 at 8:11 AM, Jean-Marc Spaggiari <
> jean-marc@spaggiari.org> wrote:
>
> > Any idea why I'm getting this?
> >
> > Error: java.lang.ClassNotFoundException:
> > com.google.common.base.Preconditions
> > at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> > at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> > at java.security.AccessController.doPrivileged(Native Method)
> > at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
> > at
> >
> >
> org.apache.hadoop.hbase.util.ClassLoaderBase.<init>(ClassLoaderBase.java:58)
> > at
> >
> >
> org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:87)
> > at org.apache.hadoop.hbase.util.Classes.<clinit>(Classes.java:41)
> > at org.apache.hadoop.hbase.client.Scan.readFields(Scan.java:624)
> > at
> >
> >
> org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.convertStringToScan(TableMapReduceUtil.java:379)
> > at
> >
> >
> org.apache.hadoop.hbase.mapreduce.TableInputFormat.setConf(TableInputFormat.java:107)
> > at
> > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
> > at
> >
> >
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
> > at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
> > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
> > at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
> > at java.security.AccessController.doPrivileged(Native Method)
> > at javax.security.auth.Subject.doAs(Subject.java:415)
> > at
> >
> >
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
> > at org.apache.hadoop.mapred.Child.main(Child.java:249)
> >
> >
> > Initially I tought it was because of the guava lib. So I ugraded it to
> 14,
> > same result. I tought then it was because I was using a very old 1.0.3
> > hadoop version so I upgraded it to 1.2.1 (went very well, pretty simple).
> > Still same issue. (Yes I copied hadoop jar to hbase lib).
> >
> > This missing class is into guava 11.0.2 jar. My own MR jobs are running
> > well, HBase is running well, et. Just RowCounter is not working.
> >
> > Any idea?
> >
> > Thanks,
> >
> > JM
> >
>
Re: RowCounter ClassNotFoundException: com.google.common.base.Preconditions
Posted by Ted Yu <yu...@gmail.com>.
Which version of HBase do you use ?
Can you show us the command line for RowCounter ?
Thanks
On Mon, Dec 23, 2013 at 8:11 AM, Jean-Marc Spaggiari <
jean-marc@spaggiari.org> wrote:
> Any idea why I'm getting this?
>
> Error: java.lang.ClassNotFoundException:
> com.google.common.base.Preconditions
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
> at
>
> org.apache.hadoop.hbase.util.ClassLoaderBase.<init>(ClassLoaderBase.java:58)
> at
>
> org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:87)
> at org.apache.hadoop.hbase.util.Classes.<clinit>(Classes.java:41)
> at org.apache.hadoop.hbase.client.Scan.readFields(Scan.java:624)
> at
>
> org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.convertStringToScan(TableMapReduceUtil.java:379)
> at
>
> org.apache.hadoop.hbase.mapreduce.TableInputFormat.setConf(TableInputFormat.java:107)
> at
> org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
> at
>
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
> at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
> at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
> at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:415)
> at
>
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
> at org.apache.hadoop.mapred.Child.main(Child.java:249)
>
>
> Initially I tought it was because of the guava lib. So I ugraded it to 14,
> same result. I tought then it was because I was using a very old 1.0.3
> hadoop version so I upgraded it to 1.2.1 (went very well, pretty simple).
> Still same issue. (Yes I copied hadoop jar to hbase lib).
>
> This missing class is into guava 11.0.2 jar. My own MR jobs are running
> well, HBase is running well, et. Just RowCounter is not working.
>
> Any idea?
>
> Thanks,
>
> JM
>