HADOOP-19509. Add a config entry to make IPC.Client checkAsyncCall off by default.#7521
HADOOP-19509. Add a config entry to make IPC.Client checkAsyncCall off by default.#7521szetszwo merged 5 commits intoapache:trunkfrom
Conversation
|
Hi, @KeeProMise , Please help review this PR when you have free time, Thanks ahead. And i will close HDFS-17758 #7501 . |
|
🎊 +1 overall
This message was automatically generated. |
|
hi @hfutatzhanghb please pay attention to checkstyle. |
fixed, thanks a lot. |
szetszwo
left a comment
There was a problem hiding this comment.
@hfutatzhanghb , thanks for working on this! Please see the suggestion inlined.
|
|
||
| <!-- ipc properties --> | ||
| <property> | ||
| <name>ipc.client.async.calls.check.enable</name> |
There was a problem hiding this comment.
Instead of adding another conf, how about having ipc.client.async.calls.max set to -1 for disabling it?
There was a problem hiding this comment.
Hi, @szetszwo . Thanks a lot for reviewing. Looks Good because it can prevent introduce a new configuraton.
We can modify code like this? Let's here what other people say and discuss it.
public boolean isAsyncCallCheckEabled() {
return maxAsyncCalls >= 0;
}Hi, @KeeProMise . Please cc. this, thanks a lot.
There was a problem hiding this comment.
Got it, Thanks all. Will push a new version later.
|
🎊 +1 overall
This message was automatically generated. |
szetszwo
left a comment
There was a problem hiding this comment.
+1 the change looks good.
|
🎊 +1 overall
This message was automatically generated. |
|
🎊 +1 overall
This message was automatically generated. |
|
@KeeProMise , would you like to take a look? Or we can merge this. |
@hfutatzhanghb @szetszwo LGTM+1. |
Description of PR
HADOOP-19509
Add a config entry to make IPC.Client checkAsyncCall off by default.
In my practice, when enable aysnc router rpc, we must adjust
ipc.client.async.calls.maxmuch larger. If not, we will get AsyncCallLimitExceededException exception frequently.The original purpose of method checkAsyncCall is to prevent Out-of-Memory from occurring on the client, we should make it not throttle router async rpc request. And we should make checkAsyncCall default by false unless user really know what they are doing and turn on this switch.
BTW, we use other mechanisms to prevent OOM from occurring on the hdfs router. please see HDFS-17713
How was this patch tested?
Add unit test.