[
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)