[ 
https://issues.apache.org/jira/browse/DRILL-4508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15194967#comment-15194967
 ] 

Khurram Faraaz commented on DRILL-4508:
---------------------------------------

The issue is also seen on Drill 1.7.0-SNAPSHOT

{noformat}
2016-03-15 08:53:17,922 [main] INFO  o.a.d.e.s.s.PersistentStoreRegistry - 
Using the configured PStoreProvider class: 
'org.apache.drill.exec.store.sys.store.provider.ZookeeperPersistentStoreProvider'.
2016-03-15 08:53:19,715 [main] INFO  o.apache.drill.exec.server.Drillbit - 
Construction completed (2470 ms).
2016-03-15 08:53:19,825 [main] INFO  o.a.drill.exec.rpc.user.UserServer - User 
Error Occurred
org.apache.drill.common.exceptions.UserException: RESOURCE ERROR: Drillbit 
could not bind to port 31010.

Server type UserServer

[Error Id: 4791d553-4a84-4709-b685-0313febe82d5 ]
        at 
org.apache.drill.common.exceptions.UserException$Builder.build(UserException.java:543)
 ~[drill-common-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.rpc.BasicServer.bind(BasicServer.java:202) 
[drill-rpc-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at 
org.apache.drill.exec.service.ServiceEngine.start(ServiceEngine.java:142) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:109) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:281) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:261) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:257) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
java.io.IOException: bind() failed: Address already in use
        at io.netty.channel.epoll.Native.newIOException(Native.java:124) 
~[netty-transport-native-epoll-4.0.27.Final-linux-x86_64.jar:na]
        at io.netty.channel.epoll.Native.bind(Native.java:390) 
~[netty-transport-native-epoll-4.0.27.Final-linux-x86_64.jar:na]
        at 
io.netty.channel.epoll.EpollServerSocketChannel.doBind(EpollServerSocketChannel.java:62)
 ~[netty-transport-native-epoll-4.0.27.Final-linux-x86_64.jar:na]
        at 
io.netty.channel.AbstractChannel$AbstractUnsafe.bind(AbstractChannel.java:485) 
~[netty-transport-4.0.27.Final.jar:4.0.27.Final]
        at 
io.netty.channel.DefaultChannelPipeline$HeadContext.bind(DefaultChannelPipeline.java:1081)
 ~[netty-transport-4.0.27.Final.jar:4.0.27.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext.invokeBind(AbstractChannelHandlerContext.java:502)
 ~[netty-transport-4.0.27.Final.jar:4.0.27.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:487)
 ~[netty-transport-4.0.27.Final.jar:4.0.27.Final]
        at 
io.netty.channel.DefaultChannelPipeline.bind(DefaultChannelPipeline.java:904) 
~[netty-transport-4.0.27.Final.jar:4.0.27.Final]
        at io.netty.channel.AbstractChannel.bind(AbstractChannel.java:198) 
~[netty-transport-4.0.27.Final.jar:4.0.27.Final]
        at 
io.netty.bootstrap.AbstractBootstrap$2.run(AbstractBootstrap.java:348) 
~[netty-transport-4.0.27.Final.jar:4.0.27.Final]
        at 
io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:357)
 ~[netty-common-4.0.27.Final.jar:4.0.27.Final]
        at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:254) 
~[netty-transport-native-epoll-4.0.27.Final-linux-x86_64.jar:na]
        at 
io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
 ~[netty-common-4.0.27.Final.jar:4.0.27.Final]
        at java.lang.Thread.run(Thread.java:744) ~[na:1.7.0_45]
2016-03-15 08:53:20,851 [main] WARN  o.apache.drill.exec.server.Drillbit - 
Failure on close()
java.lang.NullPointerException: null
        at org.apache.drill.exec.work.WorkManager.close(WorkManager.java:157) 
~[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.common.AutoCloseables.close(AutoCloseables.java:76) 
~[drill-common-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.common.AutoCloseables.close(AutoCloseables.java:64) 
~[drill-common-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.close(Drillbit.java:149) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:283) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:261) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:257) 
[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
2016-03-15 08:53:20,852 [main] INFO  o.apache.drill.exec.server.Drillbit - 
Shutdown completed (1026 ms).
{noformat}

> Null proof all AutoCloseable.close() methods
> --------------------------------------------
>
>                 Key: DRILL-4508
>                 URL: https://issues.apache.org/jira/browse/DRILL-4508
>             Project: Apache Drill
>          Issue Type: Bug
>          Components:  Server
>    Affects Versions: 1.5.0
>            Reporter: Venki Korukanti
>            Priority: Minor
>             Fix For: 1.7.0
>
>
> If Drillbit fails to start (due to incorrect configuration or storage plugin 
> information not found etc.), we end up calling close on various components 
> such as WebServer, Drillbit etc. Some of these components may not have 
> initialized and may have null values. Close() method is not checking for null 
> values before reading them. One example is here:
> {code}
> java.lang.NullPointerException: null
>         at 
> org.apache.drill.exec.server.options.SystemOptionManager.close(SystemOptionManager.java:280)
>  ~[drill-java-exec-1.6.0.jar:1.6.0]
>         at 
> org.apache.drill.exec.server.DrillbitContext.close(DrillbitContext.java:185) 
> ~[drill-java-exec-1.6.0.jar:1.6.0]
>         at org.apache.drill.exec.work.WorkManager.close(WorkManager.java:157) 
> ~[drill-java-exec-1.6.0.jar:1.6.0]
>         at 
> org.apache.drill.common.AutoCloseables.close(AutoCloseables.java:76) 
> ~[drill-common-1.6.0.jar:1.6.0]
>         at 
> org.apache.drill.common.AutoCloseables.close(AutoCloseables.java:64) 
> ~[drill-common-1.6.0.jar:1.6.0]
>         at org.apache.drill.exec.server.Drillbit.close(Drillbit.java:149) 
> [drill-java-exec-1.6.0.jar:1.6.0]
>         at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:283) 
> [drill-java-exec-1.6.0.jar:1.6.0]
>         at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:261) 
> [drill-java-exec-1.6.0.jar:1.6.0]
>         at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:257) 
> [drill-java-exec-1.6.0.jar:1.6.0]
> {code}
> This masks the actual error (incorrect configuration) and it is hard to know 
> what went wrong.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to