Cancel Operation

Cancels a user-induced fault operation.

The following APIs start fault operations that may be cancelled by using CancelOperation: StartDataLoss, StartQuorumLoss, StartPartitionRestart, StartNodeTransition.

If force is false, then the specified user-induced operation will be gracefully stopped and cleaned up. If force is true, the command will be aborted, and some internal state may be left behind. Specifying force as true should be used with care. Calling this API with force set to true is not allowed until this API has already been called on the same test command with force set to false first, or unless the test command already has an OperationState of OperationState.RollingBack. Clarification: OperationState.RollingBack means that the system will be/is cleaning up internal system state caused by executing the command. It will not restore data if the test command was to cause data loss. For example, if you call StartDataLoss then call this API, the system will only clean up internal state from running the command. It will not restore the target partition's data, if the command progressed far enough to cause data loss.

Important note: if this API is invoked with force==true, internal state may be left behind.

Request

Method Request URI
POST /Faults/$/Cancel?api-version=6.0&OperationId={OperationId}&Force={Force}&timeout={timeout}

Parameters

Name Type Required Location
api-version string Yes Query
OperationId string (uuid) Yes Query
Force boolean Yes Query
timeout integer (int64) No Query

api-version

Type: string
Required: Yes
Default: 6.0

The version of the API. This parameter is required and its value must be '6.0'.

Service Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.

Additionally the runtime accept any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0, but if the runtime is 6.1, in order to make it easier to write the clients, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.


OperationId

Type: string (uuid)
Required: Yes

A GUID that identifies a call of this API. This is passed into the corresponding GetProgress API


Force

Type: boolean
Required: Yes
Default: false

Indicates whether to gracefully rollback and clean up internal system state modified by executing the user-induced operation.


timeout

Type: integer (int64)
Required: No
Default: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1

The server timeout for performing the operation in seconds. This timeout specifies the time duration that the client is willing to wait for the requested operation to complete. The default value for this parameter is 60 seconds.

Responses

HTTP Status Code Description Response Schema
200 (OK) A successful operation will return 200 status code.
All other status codes The detailed error response.
FabricError