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

ASF GitHub Bot commented on DRILL-5874:
---------------------------------------

Github user sohami commented on a diff in the pull request:

    https://github.com/apache/drill/pull/993#discussion_r145565896
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/server/rest/DrillRestServer.java
 ---
    @@ -204,9 +217,15 @@ public WebUserConnection provide() {
                     
config.getLong(ExecConstants.HTTP_SESSION_MEMORY_RESERVATION),
                     config.getLong(ExecConstants.HTTP_SESSION_MEMORY_MAXIMUM));
     
    +        // Create a dummy close future which is needed by Foreman only. 
Foreman uses this future to add a close
    +        // listener to known about channel close event from underlying 
layer. We use this future to notify Foreman
    +        // listeners when the Web connection between Web Client and 
WebServer is closed. This will help Foreman to cancel
    +        // all the running queries for this Web Client.
    --- End diff --
    
    The query is killed when the HttpSession is invalidated either by logout or 
by timeout in case of authenticated user session. But for unauthenticated or 
anonymous user we don't kill the query after HttpSession timeout since we don't 
maintain any session related information. The query will keep running unless it 
is explicitly cancelled from /profile page.


> NPE in AnonWebUserConnection.cleanupSession()
> ---------------------------------------------
>
>                 Key: DRILL-5874
>                 URL: https://issues.apache.org/jira/browse/DRILL-5874
>             Project: Apache Drill
>          Issue Type: Bug
>    Affects Versions: 1.12.0
>            Reporter: Paul Rogers
>            Assignee: Sorabh Hamirwasia
>             Fix For: 1.12.0
>
>
> When debugging another issue, I tried to use the Web UI to run the example 
> query:
> {code}
> SELECT * FROM cp.`employee.json` LIMIT 20
> {code}
> The query failed with this error:
> {noformat}
> Query Failed: An Error Occurred
> java.lang.NullPointerException
> {noformat}
> No stack trace was provided in the log, even at DEBUG level.
> Debugging, the problem appears to be deep inside 
> {{AnonWebUserConnection.cleanupSession()}}:
> {code}
> package io.netty.channel;
> public class DefaultChannelPromise ...
>     protected EventExecutor executor() {
>         EventExecutor e = super.executor();
>         if (e == null) {
>             return channel().eventLoop();
>         } else {
>             return e;
>         }
>     }
> {code}
> In the above, {{channel()}} is null. the {{channel}} field is also null.
> This may indicate that some part of the Web UI was not set up correctly. This 
> is a recent change, as this code worked several days ago.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to