取消作業
取消使用者引起的錯誤作業。
下列 API 啟動的錯誤作業可藉由使用 CancelOperation 來取消:StartDataLoss、StartQuorumLoss、StartPartitionRestart、StartNodeTransition。
如果 force 為 false,將會以正常方式停止並清除指定的使用者引發作業。 如果 force 為 true,則會中止命令,而可能遺留某些內部狀態。 將 force 指定為 true 應該謹慎使用。 必須已經在相同的測試命令上先搭配將 force 設定為 false 來呼叫此 API,或除非測試命令的 OperationState 已經是 OperationState.RollingBack,才允許搭配將 force 設定為 true 來呼叫此 API。 說明:OperationState.RollingBack 表示系統將會/正在清除執行命令所造成的內部系統狀態。 如果測試命令是用來引發資料遺失,則它將不會還原資料。 例如,如果您呼叫 StartDataLoss,然後呼叫此 API,系統將只會清除從執行命令產生的內部狀態。 如果命令已進展到足以造成資料遺失的地步,則它將不會還原目標分割區的資料。
重要注意事項:如果搭配 force==true 來叫用此 API,可能會遺留內部狀態。
要求
方法 | 要求 URI |
---|---|
POST | /Faults/$/Cancel?api-version=6.0&OperationId={OperationId}&Force={Force}&timeout={timeout} |
參數
名稱 | 類型 | 必要 | Location |
---|---|---|---|
api-version |
字串 | 是 | 查詢 |
OperationId |
字串 (uuid) | 是 | 查詢 |
Force |
boolean | 是 | 查詢 |
timeout |
整數 (int64) | No | 查詢 |
api-version
類型:字串
必要:是
預設:6.0
API 的版本。 這是必要參數,其值必須是 '6.0'。
Service Fabric REST API 版本是以導入或變更 API 的執行時間版本為基礎。 Service Fabric 執行時間支援多個版本的 API。 這是 API 的最新支援版本。 如果傳遞較低的 API 版本,傳回的回應可能與此規格中所述的回應不同。
此外,執行時間會接受高於最新支援版本的任何版本,最高為目前版本的執行時間。 因此,如果最新的 API 版本是 6.0,但如果執行時間是 6.1,為了更容易撰寫用戶端,執行時間將會接受該 API 6.1 版。 不過,API 的行為會根據記載的 6.0 版本。
OperationId
類型:字串 (uuid)
必要:是
識別此 API 呼叫的 GUID。 這會傳遞至對應的 GetProgress API
Force
類型:布林值
必要:是
預設:false
指出是否要以正常方式復原並清除執行使用者引發作業所修改的內部系統狀態。
timeout
類型:整數 (int64)
必要:否
預設:60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
用來執行作業的伺服器逾時 (以秒為單位)。 此逾時指定了用戶端願意等候要求作業完成的持續時間。 這個參數的預設值是 60 秒。
回應
HTTP 狀態碼 | 描述 | 回應結構描述 |
---|---|---|
200 (確定) | 成功的作業會傳回 200 狀態碼。 |
|
所有其他狀態碼 | 詳細的錯誤回應。 |
FabricError |