Jianshi Huang created HBASE-11622: ------------------------------------- Summary: completebulkload/loadIncrementalHFiles cannot specify table with namespace Key: HBASE-11622 URL: https://issues.apache.org/jira/browse/HBASE-11622 Project: HBase Issue Type: Bug Affects Versions: 0.98.0 Reporter: Jianshi Huang
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). 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) By 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? P.S. Comment from Matteo Bertozzi: we don't need the name to be related to the table name. We can replace the getUniqueName() using something like this String getUniqueName(TableName tableName) { String name = UUID.randomUUID().toString().replaceAll("-", "") + "," + regionCount.incrementAndGet(); return name; } -- This message was sent by Atlassian JIRA (v6.2#6252)