Based on #47 so that needs to be merged before this
I have narrowed down, the cause of timeout errors and dropping of throughput when one node is killed.
When a node is killed, the connection on the voltdb node is closed but the one on the client stays open. Until someone tries to write to it that is when broken pipe error is returned.
This PR. ensures that we close the connection on client side the moment we notice we can no longer write to it. Also we ensure that other procedure invocations are sent to the other nodes which are still operational.
Based on #47 so that needs to be merged before this
I have narrowed down, the cause of timeout errors and dropping of throughput when one node is killed.
When a node is killed, the connection on the voltdb node is closed but the one on the client stays open. Until someone tries to write to it that is when broken pipe error is returned.
This PR. ensures that we close the connection on client side the moment we notice we can no longer write to it. Also we ensure that other procedure invocations are sent to the other nodes which are still operational.