Skip to content

Commit aaa6f59

Browse files
authored
Merge pull request #187150 from Venkat1340/Users/Venkat1340/Addcputhreadanalysis
MsDocs: Add CPU thread analysis.
2 parents dce43e9 + 0210617 commit aaa6f59

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

articles/cosmos-db/sql/troubleshoot-dot-net-sdk-request-timeout.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn how to diagnose and fix .NET SDK request timeout exceptions.
44
author: j82w
55
ms.service: cosmos-db
66
ms.subservice: cosmosdb-sql
7-
ms.date: 03/05/2021
7+
ms.date: 02/02/2022
88
ms.author: jawilley
99
ms.topic: troubleshooting
1010
ms.reviewer: sngun
@@ -69,6 +69,7 @@ The timeouts will contain *Diagnostics*, which contain:
6969

7070
* If the `cpu` values are over 70%, the timeout is likely to be caused by CPU exhaustion. In this case, the solution is to investigate the source of the high CPU utilization and reduce it, or scale the machine to a larger resource size.
7171
* If the `threadInfo/isThreadStarving` nodes have `True` values, the cause is thread starvation. In this case the solution is to investigate the source/s of the thread starvation (potentially locked threads), or scale the machine/s to a larger resource size.
72+
* If the `dateUtc` time in-between measurements is not approximately 10 seconds, it also would indicate contention on the thread pool. CPU is measured as an independent Task that is enqueued in the thread pool every 10 seconds, if the time in-between measurement is longer, it would indicate that the async Tasks are not able to be processed in a timely fashion. Most common scenarios are when doing [blocking calls over async code](https://github.com/davidfowl/AspNetCoreDiagnosticScenarios/blob/master/AsyncGuidance.md#avoid-using-taskresult-and-taskwait) in the application code.
7273

7374
# [Older SDK](#tab/cpu-old)
7475

articles/cosmos-db/sql/troubleshoot-dot-net-sdk-slow-request.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn how to diagnose and fix slow requests when using Azure Cosmos
44
author: j82w
55
ms.service: cosmos-db
66
ms.subservice: cosmosdb-sql
7-
ms.date: 01/10/2022
7+
ms.date: 02/02/2022
88
ms.author: jawilley
99
ms.topic: troubleshooting
1010
ms.reviewer: sngun
@@ -102,6 +102,7 @@ The timeouts will contain *Diagnostics*, which contain:
102102

103103
* If the `cpu` values are over 70%, the timeout is likely to be caused by CPU exhaustion. In this case, the solution is to investigate the source of the high CPU utilization and reduce it, or scale the machine to a larger resource size.
104104
* If the `threadInfo/isThreadStarving` nodes have `True` values, the cause is thread starvation. In this case the solution is to investigate the source/s of the thread starvation (potentially locked threads), or scale the machine/s to a larger resource size.
105+
* If the `dateUtc` time in-between measurements is not approximately 10 seconds, it also would indicate contention on the thread pool. CPU is measured as an independent Task that is enqueued in the thread pool every 10 seconds, if the time in-between measurement is longer, it would indicate that the async Tasks are not able to be processed in a timely fashion. Most common scenarios are when doing [blocking calls over async code](https://github.com/davidfowl/AspNetCoreDiagnosticScenarios/blob/master/AsyncGuidance.md#avoid-using-taskresult-and-taskwait) in the application code.
105106

106107
# [Older SDK](#tab/cpu-old)
107108

0 commit comments

Comments
 (0)