You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Volodymyr Vysotskyi (JIRA)" <ji...@apache.org> on 2019/02/25 16:16:00 UTC

[jira] [Created] (DRILL-7056) Drill fails with NPE when starting in distributed mode and 31010 port is used

Volodymyr Vysotskyi created DRILL-7056:
------------------------------------------

             Summary: Drill fails with NPE when starting in distributed mode and 31010 port is used
                 Key: DRILL-7056
                 URL: https://issues.apache.org/jira/browse/DRILL-7056
             Project: Apache Drill
          Issue Type: Bug
    Affects Versions: 1.15.0
            Reporter: Volodymyr Vysotskyi


Steps to reproduce:
1. Run process which uses 31010 port, for example, execute the following code:
{code:java}
    try (Socket localhost = new Socket("localhost", 31010)) {
      Thread.sleep(500_000);
    }
{code}
2. Start Drill in distributed mode.

As the result, Drill is not started and the following stack trace with NPE in {{drillbit.log}}:
{noformat}
[Error Id: 2600a33d-c06d-4361-a39b-8f4b3d05b639 ]
        at org.apache.drill.common.exceptions.UserException$Builder.build(UserException.java:633) ~[drill-common-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.rpc.BasicServer.bind(BasicServer.java:211) ~[drill-rpc-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.service.ServiceEngine.start(ServiceEngine.java:100) ~[drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:207) [drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:527) [drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:497) [drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:493) [drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method) ~[na:1.8.0_191]
        at sun.nio.ch.Net.bind(Net.java:433) ~[na:1.8.0_191]
        at sun.nio.ch.Net.bind(Net.java:425) ~[na:1.8.0_191]
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223) ~[na:1.8.0_191]
        at io.netty.channel.socket.nio.NioServerSocketChannel.doBind(NioServerSocketChannel.java:128) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.channel.AbstractChannel$AbstractUnsafe.bind(AbstractChannel.java:500) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.channel.DefaultChannelPipeline$HeadContext.bind(DefaultChannelPipeline.java:1218) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.channel.AbstractChannelHandlerContext.invokeBind(AbstractChannelHandlerContext.java:495) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:480) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.channel.DefaultChannelPipeline.bind(DefaultChannelPipeline.java:965) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.channel.AbstractChannel.bind(AbstractChannel.java:209) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.bootstrap.AbstractBootstrap$2.run(AbstractBootstrap.java:355) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:399) ~[netty-common-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463) ~[netty-transport-4.0.48.Final.jar:4.0.48.Final]
        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) ~[netty-common-4.0.48.Final.jar:4.0.48.Final]
        at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_191]
2019-02-25 17:58:03,888 [main] WARN  o.apache.drill.exec.server.Drillbit - Failure on close()
java.lang.NullPointerException: null
        at org.apache.drill.exec.server.rest.WebServer.generateOptionsDescriptionJSFile(WebServer.java:480) ~[drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.rest.WebServer.getTmpJavaScriptDir(WebServer.java:138) ~[drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.rest.WebServer.close(WebServer.java:471) ~[drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.common.AutoCloseables.close(AutoCloseables.java:87) ~[drill-common-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.common.AutoCloseables.close(AutoCloseables.java:75) ~[drill-common-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.close(Drillbit.java:300) [drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:530) [drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:497) [drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
        at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:493) [drill-java-exec-1.16.0-SNAPSHOT.jar:1.16.0-SNAPSHOT]
2019-02-25 17:58:03,888 [main] INFO  o.apache.drill.exec.server.Drillbit - Shutdown completed (1064 ms).
{noformat}
Looks like it was caused by the fix for DRILL-5735, since NPE is thrown in the code introduced by that fix.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)