[ 
https://issues.apache.org/jira/browse/DRILL-5280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Usman Shahid updated DRILL-5280:
--------------------------------
    Description: 
I tried to start drill in distributed mode but ran into this:
{code}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
{code}
The complete stack trace for the `NullPointerException` is:
{code}
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       
{code}
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. 

  was:
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. 


> 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:
> {code}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
> {code}
> The complete stack trace for the `NullPointerException` is:
> {code}
> 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       
> {code}
> 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)

Reply via email to