HCCleanupAsync deadlock on HCWebSocketConnectAsync failure.
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- cpp
- Área
- networking
Línea de trabajo
Comienza reproduciendo el fallo 401 de HCWebSocketConnectAsync en XBOX GDK 250402 y, después, sigue HCCleanupAsync a través de la ruta de limpieza de WebSocket. Inspecciona WinHttpConnection::StartWinHttpClose y el fallo de WinHttpCloseHandle mostrado en los logs. Se considera terminado cuando la limpieza se completa sin deadlock después de que falle la conexión.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
On XBOX GDK 250402 version after HCWebSocketConnectAsync failure(401 error code from http), the HCCleanupAsync creates deadlock and cannot be finished or even terminated. Possible reason that I found in logs is :
[0758][I][16:01:09.365][HTTPCLIENT] WinHttpConnection WinHttp callback statusCode=11
[0758][I][16:01:09.417][HTTPCLIENT] WinHttpConnection WinHttp callback statusCode=21
[0758][I][16:01:09.418][HTTPCLIENT] WinHttpConnection WinHttp callback statusCode=41
[0758][I][16:01:09.421][HTTPCLIENT] WinHttpConnection WinHttp callback statusCode=81
[0758][I][16:01:09.525][HTTPCLIENT] WinHttpConnection WinHttp callback statusCode=321
[0758][I][16:01:09.551][HTTPCLIENT] HCHttpCallPerform [ID 2] [TID 1880l] WINHTTP_CALLBACK_STATUS_SENDREQUEST_COMPLETE
[0758][I][16:01:09.551][HTTPCLIENT] WinHttpConnection WinHttp callback statusCode=641
[0758][I][16:01:09.551][HTTPCLIENT] WinHttpConnection WinHttp callback statusCode=1281
[0758][I][16:01:09.551][HTTPCLIENT] HCHttpCallPerform [ID 2] [TID 1880l] Websocket WINHTTP_CALLBACK_STATUS_HEADERS_AVAILABLE
[0758][E][16:01:09.551][HTTPCLIENT] HCHttpCallPerform [ID 2] [TID 1880l] WinHttpWebSocketCompleteUpgrade errorcode 4317
[0758][I][16:01:09.551][HTTPCLIENT] HCHttpCallResponseSetErrorCode [ID 2]: errorCode=80004005 (800710DD)
[0758][V][16:01:09.551][HTTPCLIENT] WinHttpConnection::StartWinHttpClose, current state=0 transitioning to ConnectionState::WinHttpClosing
[0758][E][16:01:09.551][HTTPCLIENT] WinHttpCloseHandle failed with errorCode=6
[0730][I][16:01:11.418][WEBSOCKET] HC_WEBSOCKET_OBSERVER::~HC_WEBSOCKET_OBSERVER
WinHttpCloseHandle couldn't be cleaned up, so it provokes deadlock.
Logs when I invoke HCCleanupAsync:
[071C][V][16:01:51.833][HTTPCLIENT] HC_PERFORM_ENV::Cleaning up, HTTP=0, WebSocket Connecting=0, WebSocket Connected=0
[071C][V][16:01:51.834][HTTPCLIENT] NetworkState::CleanupAsyncProvider::Begin: HTTP active=0, WebSocket Connecting=0, WebSocket Connected=0
[071C][V][16:01:55.382][HTTPCLIENT] CurlProvider::CleanupAsyncProvider, cleanupTasksRemaining=0
- Lenguaje dominante
- C++
- Estrellas
- 295
- Forks
- 144
- Merge medio
- 2 d 19 h
- PR fusionados (30 d)
- 2
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/libHttpClient
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
microsoft/libHttpClient#964 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
microsoft/libHttpClient#958 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
microsoft/libHttpClient#989 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
microsoft/libHttpClient#868 · 6 comentarios · 1 reacción ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
microsoft/libHttpClient#795 ·
Todos los issues de microsoft/libHttpClient
Issues similares
-
Website Doc Typo Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 92/100
autowarefoundation/autoware_universe#13413 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
automated-analysis bug memory-safety
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100