Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Not A Problem
-
1.6.0
-
None
-
None
Description
File:
org.apache.accumulo.master.tableOps.BulkImport
line 188
BulkImport.java
String tableDir = fs.matchingFileSystem(new Path(sourceDir), ServerConstants.getTablesDirs()).toString(); if (tableDir == null) throw new IllegalStateException(sourceDir + " is not in a known namespace"); Path directory = new Path(tableDir + "/" + tableId);
It is possible that fs.matchingFileSystem() can return null, so calling toString() will cause a NullPointerException. (See org.apache.accumulo.server.fs.VolumeManagerImpl on line 512)
The following lines check for a null return, but by this time its too late.
I think in my case, I've mis-configured something such that the function is unable to get a matching file system, so I will probably be able to get around this without a code update.
Perhaps the fix is as simple as this:
BulkImport.java
String tableDir = fs.matchingFileSystem(new Path(sourceDir), ServerConstants.getTablesDirs()); if (tableDir == null) throw new IllegalStateException(sourceDir + " is not in a known namespace"); Path directory = new Path(tableDir.toString() + "/" + tableId);