dengzhhu653 commented on PR #4257:
URL: https://github.com/apache/hive/pull/4257#issuecomment-1588344974
> @dengzhhu653 Thanks for your review. In this patch we want
`AbstractHMSHandlerProxy` become an interface easy to expand other proxy
strategies beyond just "retrying", like timing or something else. It may be
different from `RetryingHMSHandlerHook`, WDYT?
Retrying on transient exception is a good way to reduce the network
roundtrip client retries, besides there has been a property
`hive.hmshandler.retry.attempts` to control the number of retries, e.g, 0 for
disabling the retry mechanism.
Given the template method `AbstractHMSHandlerProxy` provided:
```
protected abstract Result invokeInternal(Object proxy, Method method,
Object[] args)
throws Throwable;
```
Whatever the strategies is, method should is called on the `proxy` in the
child's `invokeInternal`, that's what `RetryingHMSHandler` does currently.
So in my view, if there is no special need to introduce complex strategies
on `method.invoke(proxy, args)`, then let's keep the codes simple.
Thanks,
Zhihua
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]