Nodes/{name}/info/deadlock: GET
Displays the waiters that exceed the deadlock detection threshold for the specified node.
Availability
Available on all IBM Storage Scale editions.
Description
The GET scalemgmt/v2/nodes/{name}/info/deadlock request gets the details of the longest waiters that exceed the deadlock detection threshold for the specified node. For more information about the fields in the returned data structure, see mmdiag command.
Request URL
https://<IP address or host name of API server>:<port>/scalemgmt/v2/nodes/{name}/info/deadlock
where- nodes
- Specifies the resource for the GET request. Required.
- deadlock
- Specifies the information that is requested.
Request headers
Accept: application/json
Parameters
The following parameters can be used in the request URL to customize the
request:
Parameter name | Description and applicable keywords | Required/optional |
---|---|---|
name | The name of the node. | Required. |
Request data
No request data.
Response data
"mmDiagDeadLock"{
"deadlockDetectionThread": [
{
"threadId": "string",
"threadAddr": string ,
"waitStartTime": time,
"waitTime": duration,
"mutexAddr": "string",
"mutexName": "string ",
"auxReason": "string",
"delayTime": "time ",
"delayReason": "string ",
"condVarAddr": "string",
"condVarName": "string",
"condVarReason": "string",} }
],
"deadlockDetectionTimes": [
{
"mediumWaiterTime": "integer",
"overloadCluster": "string",
"overloadIndex": "string",
"shortWaiterTime": "string"
}
]
}
"status": {
"code": ReturnCode,
"message": "ReturnMessage."
}
}
The details of the parameters are provided in the following list:
- mmDiagDeadLock
-
- "deadlockDetectionThread"
- An array of all the snap files that are taken using either the GUI or the REST API.
- "threadId":"Thread ID"
- The ID of the thread.
- "threadAdd":"Thread address"
- The IP address of the thread.
- "waitStartTime":"Time"
- The start time of the event.
- "waitTime":"Time"
- The wait time of the thread.
- "mutexAddr":"IP address"
- The mutex address.
- "mutexName":"Name"
- The mutex name.
- "auxReason":"Aux Reason"
- Additional details on the aux reason.
- "delayTime":"Time"
- The delay duration.
- "delayReason":"Delay reason"
- The reason for the delay.
- deadlockDetectionTimes
- An array of all the snap files that are taken using either the GUI or the REST API.
- "mediumWaiterTime":"Time"
- The time limit defined for medium waiters.
- "overloadCluster":"Name"
- The name of the cluster that is overloaded.
- "overloadIndex":"Index"
- The cluster overload index.
- "condVarAddr": "Condition details"
- The details required for addressing issues.
- "condVarName": "Condition name"
- The name of the waiter problem.
- "condVarReason": "Condition reason"
- The reason for the waiter problem.
Examples
The following example lists the waiters that have exceeded the deadlock detection thresholds.
Request
data:
curl -k -u user:password -X GET --header 'accept:application/json' --header 'Authorization: Basic YWRtaW46YWRtaW4wMDE=' 'https://198.51.100.1:443/scalemgmt/v2/nodes/access-41/info/deadlock
Response data:
Note: In the JSON data that is returned, the return code indicates whether the
command is successful. The response code 200 indicates that the command successfully retrieved the
information. Error code 400 represents an
invalid request and 500 represents internal server error.
{
"mmDiagDeadLock": {
"deadlockDetectionThread": [{
"threadId":"",
"threadAddr":"",
"waitStartTime":"",
"waitTime":"",
"mutexAddr":"",
"mutexName":"",
"auxReason":"",
"delayTime":"",
"delayReason":"",
"condVarAddr": "",
"condVarName": "",
"condVarReason": ""
}],
"deadlockDetectionTimes": [
{
"mediumWaiterTime": "900",
"overloadCluster": "scale-cluster-4.openstacklocal",
"overloadIndex": "0.00057",
"overloaded": "0",
"shortWaiterTime": "180"
}
]
},
"status": {
"code": 200,
"message": "The request finished successfully."
}
}
}