取消操作

取消使用者引起的錯誤作業。

下列 API 啟動的錯誤作業可藉由使用 CancelOperation 來取消:StartDataLoss、StartQuorumLoss、StartPartitionRestart、StartNodeTransition。

如果 force 為 false,將會以正常方式停止並清除指定的使用者引發作業。 如果 force 為 true,則會中止命令,而可能遺留某些內部狀態。 將 force 指定為 true 應該謹慎使用。 必須已經在相同的測試命令上先搭配將 force 設定為 false 來呼叫此 API,或除非測試命令的 OperationState 已經是 OperationState.RollingBack,才允許搭配將 force 設定為 true 來呼叫此 API。 澄清:操作狀態.RollingBack 意味著系統將/正在清理由執行命令引起的內部系統狀態。 如果測試命令是用來引發資料遺失,則它將不會還原資料。 例如,如果您呼叫 StartDataLoss,然後呼叫此 API,系統將只會清除從執行命令產生的內部狀態。 如果命令已進展到足以造成資料遺失的地步,則它將不會還原目標分割區的資料。

重要提示:如果使用此 API 呼叫強制_true,則內部狀態可能會被拋在腦後。

要求

方法 要求 URI
POST /Faults/$/Cancel?api-version=6.0&OperationId={OperationId}&Force={Force}&timeout={timeout}

參數

名稱 類型 必要 Location
api-version 字串 查詢
OperationId 字串 (uuid) 查詢
Force boolean 查詢
timeout 整數 (int64) 查詢

api-version

類型: 字串
必需: 是
預設值6.0

API 的版本。 此參數是必需的,其值必須為"6.0"。

服務結構 REST API 版本基於引入或更改 API 的執行階段版本。 服務結構運行時支援多個版本的 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
包含最大值4294967295
包含最小 :1

伺服器超時,用於在幾秒鐘內執行操作。 此超時指定用戶端願意等待請求的操作完成的時間持續時間。 此參數的預設值為 60 秒。

回應

HTTP 狀態碼 描述 回應結構描述
200 (確定) 成功操作將返回 200 狀態碼。
所有其他狀態碼 詳細的錯誤回應。
結構錯誤