You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by Jacques Nadeau <ja...@gmail.com> on 2015/05/08 17:27:02 UTC

Review Request 33985: DRILL-2971, DRILL-2886, DRILL-2778, DRILL-2545: Improve RPC connection detection failure. Add RPC timeout.

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/33985/
-----------------------------------------------------------

Review request for drill, abdelhakim deneche and Steven Phillips.


Repository: drill-git


Description
-------

- Update RPC layer to a do better job of detecting and propagating connection closes.  
- Update clients to send pings on inactive sockets to verify the sockets are still open
- Update servers to timeout if they haven't received any data from socket within timeout
- Enhanced UserClientHandshake to inform UserServer whether client supports sending PING messages
- Enhance connection naming


Diffs
-----

  exec/java-exec/src/main/java/org/apache/drill/exec/ExecConstants.java be8c7a0 
  exec/java-exec/src/main/java/org/apache/drill/exec/client/DrillClient.java 5b28f16 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/BasicClient.java 72ae130 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/BasicClientWithConnection.java 08819ca 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/BasicServer.java 3a7032b 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/CoordinationQueue.java 1bb65d3 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/RemoteConnection.java a72dd32 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/RpcBus.java b165b53 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/RpcConfig.java b5974f6 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/RpcExceptionHandler.java 537452e 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlClient.java d546db3 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlConnection.java a7aaa9c 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlRpcConfig.java 37730e3 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlServer.java 43089d3 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/BitServerConnection.java 1d539a2 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataClient.java 8e2507b 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataClientConnection.java 3a569db 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataRpcConfig.java 807b6c3 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataServer.java 6f8e20b 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/QueryResultHandler.java 5e3e937 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/UserClient.java a8bad78 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/UserRpcConfig.java 88592d4 
  exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/UserServer.java 9e929de 
  exec/java-exec/src/main/java/org/apache/drill/exec/work/foreman/Foreman.java 49d0c94 
  exec/java-exec/src/main/resources/drill-module.conf 8006533 
  protocol/src/main/java/org/apache/drill/exec/proto/GeneralRPCProtos.java f47e719 
  protocol/src/main/java/org/apache/drill/exec/proto/SchemaUserProtos.java d587dfc 
  protocol/src/main/java/org/apache/drill/exec/proto/UserProtos.java c072a47 
  protocol/src/main/java/org/apache/drill/exec/proto/beans/RpcMode.java df71855 
  protocol/src/main/java/org/apache/drill/exec/proto/beans/UserToBitHandshake.java 67ac4e5 
  protocol/src/main/protobuf/GeneralRPC.proto 5538abe 
  protocol/src/main/protobuf/User.proto 59e22ae 

Diff: https://reviews.apache.org/r/33985/diff/


Testing
-------

Testing done killing bit and sqlline at various stages on single node.  Multiple nodes pending.


Thanks,

Jacques Nadeau


Re: Review Request 33985: DRILL-2971, DRILL-2886, DRILL-2778, DRILL-2545: Improve RPC connection detection failure. Add RPC timeout.

Posted by abdelhakim deneche <ad...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/33985/#review83126
-----------------------------------------------------------


LGTM, although you may want a second opinion due to my limited knowledge about the rpc layer

- abdelhakim deneche


On May 8, 2015, 3:26 p.m., Jacques Nadeau wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/33985/
> -----------------------------------------------------------
> 
> (Updated May 8, 2015, 3:26 p.m.)
> 
> 
> Review request for drill, abdelhakim deneche and Steven Phillips.
> 
> 
> Repository: drill-git
> 
> 
> Description
> -------
> 
> - Update RPC layer to a do better job of detecting and propagating connection closes.  
> - Update clients to send pings on inactive sockets to verify the sockets are still open
> - Update servers to timeout if they haven't received any data from socket within timeout
> - Enhanced UserClientHandshake to inform UserServer whether client supports sending PING messages
> - Enhance connection naming
> 
> 
> Diffs
> -----
> 
>   exec/java-exec/src/main/java/org/apache/drill/exec/ExecConstants.java be8c7a0 
>   exec/java-exec/src/main/java/org/apache/drill/exec/client/DrillClient.java 5b28f16 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/BasicClient.java 72ae130 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/BasicClientWithConnection.java 08819ca 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/BasicServer.java 3a7032b 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/CoordinationQueue.java 1bb65d3 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/RemoteConnection.java a72dd32 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/RpcBus.java b165b53 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/RpcConfig.java b5974f6 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/RpcExceptionHandler.java 537452e 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlClient.java d546db3 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlConnection.java a7aaa9c 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlRpcConfig.java 37730e3 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlServer.java 43089d3 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/BitServerConnection.java 1d539a2 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataClient.java 8e2507b 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataClientConnection.java 3a569db 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataRpcConfig.java 807b6c3 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataServer.java 6f8e20b 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/QueryResultHandler.java 5e3e937 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/UserClient.java a8bad78 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/UserRpcConfig.java 88592d4 
>   exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/UserServer.java 9e929de 
>   exec/java-exec/src/main/java/org/apache/drill/exec/work/foreman/Foreman.java 49d0c94 
>   exec/java-exec/src/main/resources/drill-module.conf 8006533 
>   protocol/src/main/java/org/apache/drill/exec/proto/GeneralRPCProtos.java f47e719 
>   protocol/src/main/java/org/apache/drill/exec/proto/SchemaUserProtos.java d587dfc 
>   protocol/src/main/java/org/apache/drill/exec/proto/UserProtos.java c072a47 
>   protocol/src/main/java/org/apache/drill/exec/proto/beans/RpcMode.java df71855 
>   protocol/src/main/java/org/apache/drill/exec/proto/beans/UserToBitHandshake.java 67ac4e5 
>   protocol/src/main/protobuf/GeneralRPC.proto 5538abe 
>   protocol/src/main/protobuf/User.proto 59e22ae 
> 
> Diff: https://reviews.apache.org/r/33985/diff/
> 
> 
> Testing
> -------
> 
> Testing done killing bit and sqlline at various stages on single node.  Multiple nodes pending.
> 
> 
> Thanks,
> 
> Jacques Nadeau
> 
>