Начальная потеря данных
Этот API вызовет потерю данных в указанной секции. Он активирует вызов API OnDataLossAsync секции.
Этот API вызовет потерю данных в указанной секции. Он активирует вызов API OnDataLoss секции. Потеря фактических данных будет зависеть от указанного DataLossMode.
- PartialDataLoss. Только кворум реплик будет удален и OnDataLoss запустится для секции, но фактическая потеря данных зависит от наличия репликации на лету.
- FullDataLoss. Все реплики удаляются, таким образом все данные будут потеряны и активируется OnDataLoss.
Этот API следует вызывать только со службой с отслеживанием состояния в качестве целевого объекта.
Вызов этого API с системной службой в качестве целевого объекта не рекомендуется.
Примечание. После вызова этого API его невозможно отменить. Вызов CancelOperation только остановит выполнение и очистит внутреннее состояния системы. Данные не восстановятся, если команда выполнялась достаточное время, чтобы вызвать потерю данных.
Вызовите API GetDataLossProgress с тем же OperationId, чтобы вернуть сведения об операции, запущенной с помощью этого API.
Запрос
Метод | Универсальный код ресурса (URI) запроса |
---|---|
POST | /Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartDataLoss?api-version=6.0&OperationId={OperationId}&DataLossMode={DataLossMode}&timeout={timeout} |
Параметры
Имя | Тип | Обязательно | Расположение |
---|---|---|---|
serviceId |
строка | Да | Путь |
partitionId |
строка (UUID) | Да | Путь |
api-version |
строка | Да | Запрос |
OperationId |
строка (UUID) | Да | Запрос |
DataLossMode |
string (перечисление) | Да | Запрос |
timeout |
integer (int64) | Нет | Запрос |
serviceId
Тип: string
Обязательный: да
Идентификатор службы. Обычно он содержит полное имя службы из URI службы без указания схемы "fabric:".
Начиная с версии 6.0, иерархические имена разделяются знаком "~".
Например, если имя службы — "fabric:/myapp/app1/svc1", то в версии 6.0 и более поздних версиях идентификатором службы будет "myapp~app1~svc1", а в предыдущих версиях идентификатором был бы "myapp/app1/svc1".
partitionId
Тип: string (uuid)
Обязательный: да
Идентификатор секции.
api-version
Тип: string
Обязательный: да
По умолчанию: 6.0
Версия API. Этот параметр является обязательным и его значение должно быть "6.0".
Версия REST API Service Fabric основана на версии среды выполнения, в которой api был представлен или был изменен. Среда выполнения Service Fabric поддерживает несколько версий API. Это последняя поддерживаемая версия API. Если передается более ранжная версия API, возвращаемый ответ может отличаться от ответа, описанного в этой спецификации.
Кроме того, среда выполнения принимает любую версию, которая выше последней поддерживаемой версии, вплоть до текущей версии среды выполнения. Таким образом, если последняя версия API — 6.0, а среда выполнения — 6.1, чтобы упростить запись клиентов, среда выполнения примет версию 6.1 для этого API. Однако поведение API будет выполняться в документе версии 6.0.
OperationId
Тип: string (uuid)
Обязательный: да
Идентификатор GUID, определяющий вызов этого API. Он передается в соответствующий API GetProgress.
DataLossMode
Тип: string (перечисление)
Обязательный: да
Это перечисление передается в API StartDataLoss, чтобы указать, какой тип потери данных следует вызвать. Возможные значения: Invalid, PartialDataLoss, FullDataLoss.
timeout
Тип: integer (int64)
Обязательный: нет
По умолчанию: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
Время ожидания сервера до выполнения операции в секундах. Время ожидания — промежуток времени, в течение которого клиент готов ждать выполнения запрошенной операции. Значение по умолчанию для этого параметра — 60 секунд.
Ответы
Код состояния HTTP | Описание | схеме ответа. |
---|---|---|
202 Accepted (принято). | Код состояния 202 указывает, что операция была принята. Вызовите API GetDataLossProgress, чтобы получить сведения о ходе выполнения. |
|
Все остальные коды состояния | Подробный ответ об ошибке. |
FabricError |