[Feature Request] Utility to detect when deadlock detector triggers
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- java
- Área
- backend-api-design
Línea de trabajo
Comienza rastreando la ruta del detector de deadlocks y el comportamiento existente de DestroyWorkflowThreadError cuando se llaman APIs de workflow como sleep o scheduleActivity. Define cómo puede un workflow observar el detector antes de realizar esas llamadas y verifica que la señal permita detener los bucles defensivos después de que falle la tarea del workflow.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Is your feature request related to a problem? Please describe.
Users would like the ability to programmatically detect when the deadlock detector has triggered (and caused the workflow task to fail), so they can instruct their code to stop processing. This would be used to write defensive logic to prevent zombie threads or loops from running after the workflow task has failed. This typically happens when there’s a bug in user code, such as a spinning loop that runs indefinitely.
Describe the solution you'd like
Currently, the SDK throws a DestroyWorkflowThreadError when a workflow API (e.g., sleep, scheduleActivity) is used after the deadlock detector has been triggered.
It would be great to have a method similar to Thread.currentThread().isInterrupted() that returns true (or an exception). This would allow developers to break out of loops or take alternate actions.
Additional context
- Lenguaje dominante
- Java
- Estrellas
- 434
- Forks
- 252
- Merge medio
- 2 d 19 h
- PR fusionados (30 d)
- 14
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la 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 temporalio/sdk-java
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
temporalio/sdk-java#2676 · 8 comentarios · 2 reacciones ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
temporalio/sdk-java#1825 ·
Los mantenedores suelen responder en 1 día
-
test server
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
temporalio/sdk-java#3088 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Warn if the SDK tried to send a payload above a specific size - JavaPosiblemente ocupada @jmaeagle99 la tomó hace 21 días. Abierto
temporalio/sdk-java#3059 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Allow configurable prefix for MDC keysPosiblemente ocupada @maciejdudko la tomó hace 21 días. Abiertoenhancement
temporalio/sdk-java#3058 · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de temporalio/sdk-java
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
apache/arrow-java#1311 ·
Los mantenedores suelen responder en 2 días
-
bug triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
security
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
IBM/networking-java-sdk#204 ·
-
bug Technical Debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
avniproject/avni-server#1080 ·