drill-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Usman Shahid (JIRA)" <j...@apache.org>
Subject [jira] [Created] (DRILL-5280) Error during udf area creation due to NullPointerException during drillbit startup
Date Tue, 21 Feb 2017 10:12:44 GMT
Usman Shahid created DRILL-5280:
-----------------------------------

             Summary: Error during udf area creation due to NullPointerException during drillbit
startup
                 Key: DRILL-5280
                 URL: https://issues.apache.org/jira/browse/DRILL-5280
             Project: Apache Drill
          Issue Type: Bug
         Environment: Windows 7 64-bit
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
            Reporter: Usman Shahid


I tried to start drill in distributed mode but ran into this:
`Exception in thread "main" org.apache.drill.exec.exception.DrillbitStartupException: Failure
during initial startup of Drillbit.
	at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:296)
	at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:272)
	at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:268)
Caused by: org.apache.drill.common.exceptions.DrillRuntimeException: Error during udf area
creation [/C:/Users/Usman.Shahid/drill/udf/registry] on file system [file:///]
	at org.apache.drill.common.exceptions.DrillRuntimeException.format(DrillRuntimeException.java:49)
	at org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.createArea(RemoteFunctionRegistry.java:251)
	at org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.prepareAreas(RemoteFunctionRegistry.java:208)
	at org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.init(RemoteFunctionRegistry.java:105)
	at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:126)
	at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:292)
	... 2 more
Caused by: java.lang.NullPointerException
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1012)
	at org.apache.hadoop.util.Shell.runCommand(Shell.java:483)
	at org.apache.hadoop.util.Shell.run(Shell.java:456)
	at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:722)
	at org.apache.hadoop.util.Shell.execCommand(Shell.java:815)
	at org.apache.hadoop.util.Shell.execCommand(Shell.java:798)
	at org.apache.hadoop.fs.FileUtil.execCommand(FileUtil.java:1097)
	at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.loadPermissionInfo(RawLocalFileSystem.java:654)
	at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.getPermission(RawLocalFileSystem.java:629)
	at org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.createArea(RemoteFunctionRegistry.java:232)
	... 6 more
`
The complete stack trace for the `NullPointerException` is:
`
Thread [main] (Suspended (exception NullPointerException))	
	owns: Object  (id=57)	
	ProcessBuilder.start() line: 1012	
	Shell$ShellCommandExecutor(Shell).runCommand() line: 483	
	Shell$ShellCommandExecutor(Shell).run() line: 456	
	Shell$ShellCommandExecutor.execute() line: 722	
	Shell.execCommand(Map<String,String>, String[], long) line: 815	
	Shell.execCommand(String...) line: 798	
	FileUtil.execCommand(File, String...) line: 1097	
	RawLocalFileSystem$DeprecatedRawLocalFileStatus.loadPermissionInfo() line: 654	
	RawLocalFileSystem$DeprecatedRawLocalFileStatus.getPermission() line: 629	
	RemoteFunctionRegistry.createArea(FileSystem, String, String) line: 232	
	RemoteFunctionRegistry.prepareAreas(DrillConfig) line: 208	
	RemoteFunctionRegistry.init(DrillConfig, PersistentStoreProvider, ClusterCoordinator) line:
105	
	Drillbit.run() line: 126	
	Drillbit.start(DrillConfig, RemoteServiceSet) line: 292	
	Drillbit.start(StartupOptions) line: 272	
	Drillbit.main(String[]) line: 268	
`
To further pinpoint it, the call to `Shell.getGetPermissionCommand()` at `RawLocalFileSystem$DeprecatedRawLocalFileStatus.loadPermissionInfo()
` returns a `new String[] { WINUTILS, "ls", "-F" }`. It's this `WINUTILS` that's null because
my system doesn't have hadoop installed (nor do I intend to use it). 
The shortest workaround to this is to have a `HADOOP_HOME` environment variable pointing towards
the `winutils.exe` bin directory. 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message