Thank you for your answer Lidi and Sidhartha,
I've updated the code in GitHub repository to gracefully stop server.
Unfortunately, the same problem still occurs.
Previously I also have tested the same issue using Python client and a
Go server (stopping by manually ctrl+c the server) which also has the
same problem.
In proposal A6 section "Transparent Retries" mentions that in case of
RPC failure which RPC never leaves the client, it will be retried
automatically.
I've confirmed using Wireshark that the RPC never got sent out in the
wire, and there is only 2 outgoing calls (no retry).
I'm not sure whether the proposal is implemented or I have to set a
settings somewhere?