admin api: implement ClusterLayoutSkipDeadNodes and use it in CLI

This commit is contained in:
Alex Auvolat
2025-03-06 18:49:56 +01:00
parent 3d94eb8d4b
commit 0951b5db75
10 changed files with 190 additions and 126 deletions
+72
View File
@@ -157,6 +157,40 @@
}
}
},
"/v2/ClusterLayoutSkipDeadNodes": {
"post": {
"tags": [
"Cluster layout"
],
"description": "Force progress in layout update trackers",
"operationId": "ClusterLayoutSkipDeadNodes",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClusterLayoutSkipDeadNodesRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Request has been taken into account",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClusterLayoutSkipDeadNodesResponse"
}
}
}
},
"500": {
"description": "Internal server error"
}
}
}
},
"/v2/ConnectClusterNodes": {
"post": {
"tags": [
@@ -1624,6 +1658,44 @@
}
}
},
"ClusterLayoutSkipDeadNodesRequest": {
"type": "object",
"required": [
"version",
"allowMissingData"
],
"properties": {
"allowMissingData": {
"type": "boolean"
},
"version": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"ClusterLayoutSkipDeadNodesResponse": {
"type": "object",
"required": [
"ackUpdated",
"syncUpdated"
],
"properties": {
"ackUpdated": {
"type": "array",
"items": {
"type": "string"
}
},
"syncUpdated": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ClusterLayoutVersion": {
"type": "object",
"required": [