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 < [email protected]> 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 <[email protected]> > > > 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 <[email protected]> > > To: user <[email protected]> > > 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 <[email protected]> > > > > > 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 <[email protected]> > > > > > >> 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 < > > >> [email protected]> 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 > > >> > > > >> > > > > > > > > >
