diff options
Diffstat (limited to 'clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Request.java')
-rw-r--r-- | clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Request.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Request.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Request.java index 27ab43b2b5a..5ac15e75127 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Request.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Request.java @@ -2,6 +2,7 @@ package com.yahoo.vespa.clustercontroller.core.restapiv2; import com.yahoo.vespa.clustercontroller.core.RemoteClusterControllerTask; +import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.DeadlineExceededException; import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.InternalFailure; import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.StateRestApiException; import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.UnknownMasterException; @@ -61,8 +62,12 @@ public abstract class Request<Result> extends RemoteClusterControllerTask { } @Override - public void handleLeadershipLost() { - failure = new UnknownMasterException("Leadership lost before request could complete"); + public void handleFailure(FailureCondition condition) { + if (condition == FailureCondition.LEADERSHIP_LOST) { + failure = new UnknownMasterException("Leadership lost before request could complete"); + } else if (condition == FailureCondition.DEADLINE_EXCEEDED) { + failure = new DeadlineExceededException("Task exceeded its version wait deadline"); + } } @Override |