drill-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sohami <...@git.apache.org>
Subject [GitHub] drill pull request #993: DRILL-5874: NPE in AnonWebUserConnection.cleanupSes...
Date Wed, 18 Oct 2017 23:48:12 GMT
Github user sohami commented on a diff in the pull request:

    https://github.com/apache/drill/pull/993#discussion_r145568772
  
    --- Diff: exec/java-exec/src/main/java/org/apache/drill/exec/server/rest/WebUserConnection.java
---
    @@ -124,6 +124,13 @@ public void sendData(RpcOutcomeListener<Ack> listener, QueryWritableBatch
result
         }
       }
     
    +  /**
    +   * Returns a DefaultChannelPromise which doesn't have reference to any actual channel
but has an EventExecutor
    +   * associated with it. In this case we use EventExecutor out of BitServer EventLoopGroup.
Since there is no actual
    +   * connection established using this class, hence the close event will never be fired
by underlying layer and close
    +   * future is set only when the WebSessionResources are closed.
    --- End diff --
    
    The intent of putting this comment here was just as an FYI how the underlying CloseFuture
is created which is returned by this function and stressting the fact that it doesn't have
any actual physical connection associated with it.
    
    WebUserConnection acts like an adapter between HttpSession and connection which Foreman
expects with each submitted request. For authenticated user this adapter is used to get UserSession
object which stores all the updated Drill session options changed over the time. 
    
    For anonymous user this adapter is created fresh with each request. But as discussed in
person I will make a change so that we can maintain session for anonymous user and have similar
behavior like authenticated user. And when the HttpSession for unauthenticated user time's
out then it will do clean up of all the web resources related to that session.


---

Mime
View raw message