데이터 손실 시작
이 API는 지정한 파티션에 대한 데이터 손실을 유도합니다. 파티션의 OnDataLossAsync API에 대한 호출을 트리거합니다.
이 API는 지정한 파티션에 대한 데이터 손실을 유도합니다. 파티션의 OnDataLoss API에 대한 호출을 트리거합니다. 실제 데이터 손실은 지정된 DataLossMode에 따라 달라집니다.
- PartialDataLoss - 복제본의 쿼럼만 제거되고 파티션에 대한 OnDataLoss가 트리거되지만 실제 데이터 손실은 진행 중인 복제의 존재 여부에 따라 달라집니다.
- FullDataLoss - 모든 복제본이 제거되므로 모든 데이터가 손실되고 OnDataLoss가 트리거됩니다.
이 API는 대상으로 상태 저장 서비스로만 호출되어야 합니다.
시스템 서비스를 대상으로 이 API를 호출하는 것은 권장되지 않습니다.
참고: 이 API가 호출되면 되돌릴 수 없습니다. CancelOperation을 호출하면 실행을 중지하고 내부 시스템 상태를 정리합니다. 명령이 데이터 손실을 충분히 진행시킨 경우 데이터를 복원하지 않습니다.
동일한 OperationId로 GetDataLossProgress API를 호출하여 이 API로 시작된 작업에 대한 정보를 반환합니다.
요청
메서드 | 요청 URI |
---|---|
POST | /Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartDataLoss?api-version=6.0&OperationId={OperationId}&DataLossMode={DataLossMode}&timeout={timeout} |
매개 변수
속성 | 형식 | 필수 | 위치 |
---|---|---|---|
serviceId |
문자열 | 예 | 경로 |
partitionId |
string(uuid) | 예 | 경로 |
api-version |
문자열 | 예 | 쿼리 |
OperationId |
string(uuid) | 예 | 쿼리 |
DataLossMode |
string(열거형) | 예 | 쿼리 |
timeout |
정수(int64) | 아니요 | 쿼리 |
serviceId
형식: 문자열
필수: 예
서비스 id입니다. 이 ID는 일반적으로 'fabric:' URI 스키마가 없는 서비스의 전체 이름입니다.
버전 6.0에서 시작하며, 계층적 이름이 "~" 문자로 구분됩니다.
예를 들어 서비스 이름이 "fabric:/myapp/app1/svc1"이면 서비스 ID는 6.0 이상에서는 "myapp~app1~svc1"이고 이전 버전에서는 "myapp/app1/svc1"입니다.
partitionId
형식: string(uuid)
필수: 예
파티션의 id입니다.
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
형식: string(uuid)
필수: 예
이 API의 호출을 식별하는 GUID입니다. 해당 GetProgress API에 전달됩니다.
DataLossMode
형식: string(열거형)
필수: 예
이 열거형은 유도한 데이터 손실의 유형을 나타내도록 StartDataLoss API에 전달됩니다. 가능한 값은 'Invalid', 'PartialDataLoss', 'FullDataLoss'입니다.
timeout
형식: 정수(int64)
필수: 아니요
기본: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
작업을 수행하기 위한 서버 제한 시간(초)입니다. 이 시간 제한은 요청된 작업이 완료될 때까지 클라이언트가 기다릴 시간을 지정합니다. 이 매개 변수의 기본값은 60초입니다.
응답
HTTP 상태 코드 | 설명 | 응답 스키마 |
---|---|---|
202(수락됨) | 202 상태 코드는 작업이 수락되었음을 나타냅니다. GetDataLossProgress API를 호출하여 진행률을 가져옵니다. |
|
다른 모든 상태 코드 | 자세한 오류 응답입니다. |
FabricError |