Start Quorum Loss
Induces quorum loss for a given stateful service partition.
This API is useful for a temporary quorum loss situation on your service.
Call the GetQuorumLossProgress API with the same OperationId to return information on the operation started with this API.
This can only be called on stateful persisted (HasPersistedState==true) services. Do not use this API on stateless services or stateful in-memory only services.
Request
Method | Request URI |
---|---|
POST | /Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartQuorumLoss?api-version=6.0&OperationId={OperationId}&QuorumLossMode={QuorumLossMode}&QuorumLossDuration={QuorumLossDuration}&timeout={timeout} |
Parameters
Name | Type | Required | Location |
---|---|---|---|
serviceId |
string | Yes | Path |
partitionId |
string (uuid) | Yes | Path |
api-version |
string | Yes | Query |
OperationId |
string (uuid) | Yes | Query |
QuorumLossMode |
string (enum) | Yes | Query |
QuorumLossDuration |
integer | Yes | Query |
timeout |
integer (int64) | No | Query |
serviceId
Type: string
Required: Yes
The identity of the service. This ID is typically the full name of the service without the 'fabric:' URI scheme.
Starting from version 6.0, hierarchical names are delimited with the "~" character.
For example, if the service name is "fabric:/myapp/app1/svc1", the service identity would be "myapp~app1~svc1" in 6.0+ and "myapp/app1/svc1" in previous versions.
partitionId
Type: string (uuid)
Required: Yes
The identity of the partition.
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
QuorumLossMode
Type: string (enum)
Required: Yes
This enum is passed to the StartQuorumLoss API to indicate what type of quorum loss to induce. Possible values include: 'Invalid', 'QuorumReplicas', 'AllReplicas'
QuorumLossDuration
Type: integer
Required: Yes
The amount of time for which the partition will be kept in quorum loss. This must be specified in seconds.
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 |
---|---|---|
202 (Accepted) | A 202 status code indicates the operation was accepted. Call the GetQuorumLossProgress API to get the progress. |
|
All other status codes | The detailed error response. |
FabricError |