etcdserver: improve error message when timeout due to leader fail

release-2.2
Yicheng Qin 2015-08-13 15:46:21 -07:00
parent 394894e03e
commit c229e6e655
3 changed files with 3 additions and 3 deletions

View File

@ -29,7 +29,7 @@ var (
ErrPeerURLexists = errors.New("etcdserver: peerURL exists")
ErrCanceled = errors.New("etcdserver: request cancelled")
ErrTimeout = errors.New("etcdserver: request timed out")
ErrTimeoutDueToLeaderLost = errors.New("etcdserver: request timed out, possibly due to leader lost")
ErrTimeoutDueToLeaderFail = errors.New("etcdserver: request timed out, possibly due to previous leader failure")
)
func isKeyNotFound(err error) bool {

View File

@ -54,7 +54,7 @@ func writeError(w http.ResponseWriter, err error) {
herr := httptypes.NewHTTPError(e.HTTPStatus(), e.Error())
herr.WriteTo(w)
default:
if err == etcdserver.ErrTimeoutDueToLeaderLost {
if err == etcdserver.ErrTimeoutDueToLeaderFail {
plog.Error(err)
} else {
plog.Errorf("got unexpected response error (%v)", err)

View File

@ -1022,7 +1022,7 @@ func (s *EtcdServer) parseProposeCtxErr(err error, start time.Time) error {
curLeadElected := s.r.leadElectedTime()
prevLeadLost := curLeadElected.Add(-2 * time.Duration(s.cfg.ElectionTicks) * time.Duration(s.cfg.TickMs) * time.Millisecond)
if start.After(prevLeadLost) && start.Before(curLeadElected) {
return ErrTimeoutDueToLeaderLost
return ErrTimeoutDueToLeaderFail
}
return ErrTimeout
default: