You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Sep 25, 2020. It is now read-only.
When testing Ringpop in a small cluster, I have been testing how ringpop handles node failures. When a node goes down, and a request is handleOrProxy()'d, there is a period of approximately 5 seconds where ringpop continues to forward requests to the dead node. Whilst this is expected, it throws a rather ugly error response: tchannel socket error (ECONNREFUSED from connect): connect ECONNREFUSED 10.2.0.17:9880. Is there any way that an extra argument could be added to the handleOrProxy() method that would be called when such an error occurs so that we can send a formatted response that our application can read? eg. handleOrProxy(req, res, errCallback) where errCallback is something like the example below:
functionerrCallback(err,req,res){switch(err){case'ECONNREFUSED':
res.end(JSON.stringify({status: 'failed',error: 'connection_refused',message: 'Could not connect to the correct server.',retry_in: 5}));break;case'ETIMEDOUT':
res.end(JSON.stringify({status: 'failed',error: 'connection_timeout',message: 'The connection timed out.',retry_in: 20}));break;//etc.}}
The text was updated successfully, but these errors were encountered:
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
When testing Ringpop in a small cluster, I have been testing how ringpop handles node failures. When a node goes down, and a request is
handleOrProxy()
'd, there is a period of approximately 5 seconds where ringpop continues to forward requests to the dead node. Whilst this is expected, it throws a rather ugly error response:tchannel socket error (ECONNREFUSED from connect): connect ECONNREFUSED 10.2.0.17:9880
. Is there any way that an extra argument could be added to thehandleOrProxy()
method that would be called when such an error occurs so that we can send a formatted response that our application can read? eg.handleOrProxy(req, res, errCallback)
whereerrCallback
is something like the example below:The text was updated successfully, but these errors were encountered: