[
https://issues.apache.org/jira/browse/TAJO-1563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14516044#comment-14516044
]
ASF GitHub Bot commented on TAJO-1563:
--------------------------------------
Github user blrunner commented on a diff in the pull request:
https://github.com/apache/tajo/pull/554#discussion_r29205757
--- Diff:
tajo-client/src/main/java/org/apache/tajo/client/SessionConnection.java ---
@@ -87,6 +87,10 @@ public SessionConnection(ServiceTracker tracker,
@Nullable String baseDatabase,
this.properties = properties;
this.manager = RpcClientManager.getInstance();
+
this.manager.setRetries(properties.getInt(RpcConstants.RPC_CLIENT_RETRY_MAX,
RpcConstants.DEFAULT_RPC_RETRIES));
+ this.manager.setTimeoutSeconds(
+ properties.getInt(RpcConstants.RPC_CLIENT_TIMEOUT_SECS, 0)); //
disable rpc timeout
--- End diff --
Could you explain why you disabled rpc timeout?
> Improve RPC error handling
> --------------------------
>
> Key: TAJO-1563
> URL: https://issues.apache.org/jira/browse/TAJO-1563
> Project: Tajo
> Issue Type: Improvement
> Components: query master, rpc, tajo master, worker
> Reporter: Jinho Kim
> Assignee: Jinho Kim
> Attachments: TAJO-1563.patch, TAJO-1563_2.patch, TAJO-1563_3.patch,
> TAJO-1563_4.patch
>
>
> Currently, RPC does not handle error for disconnection and a client does not
> throw if async RPC failed.
> for example. when a client calling and then it has lost a connection,
> callback has not been called.
> Callfuture.get() should throw ExecutionException and RPC client should handle
> a recoverable exception
> * Server internal exception handling
> ** Application exceptions
> *** send RemoteCallException to client
> ** Unexpected exceptions (Server failure)
> *** close current channel (client will receive channel inactive event)
> * Client internal exception handling
> ** Add internal retry when a stub is failed by connection lost
> ** Application exceptions
> *** throw exception to callback
> ** Max retry exceeded
> *** throw RecoverableException to internal exception handler
> ** Server hangs(server shutdown, OOM..)
> *** trigger the ping expired event. and throw ServiceException
> ** Unexpected exceptions (Client failure, connection lost)
> *** throw exception to all callback
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)