Appears to be a bug. It should be TableName.valueOf(...) or something
similar. Mind filing a jira?
On Tue, Jul 29, 2014 at 12:22 PM, Jianshi Huang <jianshi.huang@gmail.com>
wrote:
> I see why, looking at the source code of LoadIncrementalHFiles.java, it
> seems the temporary path created for splitting will contain ':',
>
> The error part should be this:
> String uniqueName = getUniqueName(table.getName());
> HColumnDescriptor familyDesc =
> table.getTableDescriptor().getFamily(item.family);
> Path botOut = new Path(tmpDir, uniqueName + ".bottom");
> Path topOut = new Path(tmpDir, uniqueName + ".top");
> splitStoreFile(getConf(), hfilePath, familyDesc, splitKey,
> botOut, topOut);
>
> uniqueName will be "namespce:table" so new Path will fail.
>
> A bug right?
>
> Jianshi
>
>
> On Tue, Jul 29, 2014 at 2:42 PM, Jianshi Huang <jianshi.huang@gmail.com>
> wrote:
>
> > I'm using hbase 0.98 with HDP 2.1.
> >
> >
> > On Tue, Jul 29, 2014 at 2:39 PM, Jianshi Huang <jianshi.huang@gmail.com>
> > wrote:
> >
> >> I'm using completebulkload to load 500GB of data to a table
> >> (presplitted). However, it reports the following errors:
> >>
> >> Looks like completebulkload didn't recognize the namespace part
> >> (namespace:table).
> >>
> >> Is there an option to do it? I can't find one in Google...
> >>
> >> Exception in thread "main" 14/07/28 23:32:19 INFO
> >> mapreduce.LoadIncrementalHFiles: Trying to load
> >> hfile=hdfs://xxx/vertices/PROP/f5cbf0965ff44cb8bdabd038e66485c3
> >> first=dc595cfe#cust#1812199228741466242
> >> last=dc68cedc#cust#2251647837553603393
> >> java.lang.reflect.InvocationTargetException
> >> 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.hbase.mapreduce.Driver.main(Driver.java:54)
> >> 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.IllegalStateException:
> >> java.lang.IllegalArgumentException: java.net.URISyntaxException:
> Relative
> >> path in absolute URI: grapple:vertices,37.bottom
> >> at
> >>
> org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.groupOrSplitPhase(LoadIncrementalHFiles.java:421)
> >> at
> >>
> org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.doBulkLoad(LoadIncrementalHFiles.java:291)
> >> at
> >>
> org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.run(LoadIncrementalHFiles.java:825)
> >> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> >> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
> >> at
> >>
> org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.main(LoadIncrementalHFiles.java:831)
> >> 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.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:72)
> >> at
> >> org.apache.hadoop.util.ProgramDriver.run(ProgramDriver.java:145)
> >> at
> >> org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:153)
> >> ... 10 more
> >> Caused by: java.lang.IllegalArgumentException:
> >> java.net.URISyntaxException: Relative path in absolute URI:
> >> grapple:vertices,37.bottom
> >> at org.apache.hadoop.fs.Path.initialize(Path.java:206)
> >> at org.apache.hadoop.fs.Path.<init>(Path.java:172)
> >> at org.apache.hadoop.fs.Path.<init>(Path.java:94)
> >> at
> >>
> org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.splitStoreFile(LoadIncrementalHFiles.java:450)
> >> at
> >>
> org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.groupOrSplit(LoadIncrementalHFiles.java:516)
> >> at
> >>
> org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles$2.call(LoadIncrementalHFiles.java:400)
> >> at
> >>
> org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles$2.call(LoadIncrementalHFiles.java:398)
> >> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> >> at
> >>
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> >> at
> >>
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> >> at java.lang.Thread.run(Thread.java:724)
> >> Caused by: java.net.URISyntaxException: Relative path in absolute URI:
> >> grapple:vertices,37.bottom
> >> at java.net.URI.checkPath(URI.java:1804)
> >> at java.net.URI.<init>(URI.java:752)
> >> at org.apache.hadoop.fs.Path.initialize(Path.java:203)
> >> ... 10 more
> >>
> >> --
> >> Jianshi Huang
> >>
> >> LinkedIn: jianshi
> >> Twitter: @jshuang
> >> Github & Blog: http://huangjs.github.com/
> >>
> >
> >
> >
> > --
> > Jianshi Huang
> >
> > LinkedIn: jianshi
> > Twitter: @jshuang
> > Github & Blog: http://huangjs.github.com/
> >
>
>
>
> --
> Jianshi Huang
>
> LinkedIn: jianshi
> Twitter: @jshuang
> Github & Blog: http://huangjs.github.com/
>
--
Bharath Vissapragada
<http://www.cloudera.com>
|