def cancel_operation(operation_id, force, timeout:60, custom_headers:nil)
      response = cancel_operation_async(operation_id, force, timeout:timeout, custom_headers:custom_headers).value!
      nil
    end
def cancel_operation(operation_id, force, timeout:60, custom_headers:nil)
      response = cancel_operation_async(operation_id, force, timeout:timeout, custom_headers:custom_headers).value!
      nil
    end
Cancels a user-induced fault operation.

 The following is a list of APIs that start fault operations that may be
 cancelled 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/is be
 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.

 @param operation_id A GUID that identifies a call of this API.  This is
 passed into the corresponding GetProgress API
 @param force [Boolean] Indicates whether to gracefully rollback and clean up
 internal system state modified by executing the user-induced operation.
 @param timeout [Integer] 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.
 @param custom_headers [Hash{String => String}] A hash of custom headers that
 will be added to the HTTP request.