[Feature Request] Utility to detect when deadlock detector triggers
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- java
- Ambito
- backend-api-design
Direzione di ricerca
Inizia tracciando il percorso del rilevatore di deadlock e il comportamento esistente di DestroyWorkflowThreadError quando vengono chiamate API del workflow come sleep o scheduleActivity. Definisci come un workflow può osservare il rilevatore prima di effettuare queste chiamate e verifica che il segnale consenta ai loop difensivi di arrestarsi dopo il fallimento del task del workflow.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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
- Lingua principale
- Java
- Stelle
- 434
- Fork
- 252
- Merge medio
- 3g 4h
- PR unite (30g)
- 19
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di temporalio/sdk-java
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
temporalio/sdk-java#2676 · 8 commenti · 2 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
temporalio/sdk-java#1825 ·
I maintainer di solito rispondono entro 1 giorno
-
Warn if the SDK tried to send a payload above a specific size - JavaForse già presa @jmaeagle99 l’ha presa 22 giorni fa. Aperta
temporalio/sdk-java#3059 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Allow configurable prefix for MDC keysForse già presa @maciejdudko l’ha presa 22 giorni fa. Apertaenhancement
temporalio/sdk-java#3058 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Promise.get(timeout, unit) throws a misleading TimeoutException when the workflow is canceledForse di nuovo libera @Quinn-With-Two-Ns l’ha presa 37 giorni fa e non c’è nessuna pull request aperta. Aperta
temporalio/sdk-java#3026 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di temporalio/sdk-java
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
bisq-network/bisq#8097 ·
I maintainer di solito rispondono entro 1 giorno
-
area/frontend good first issue kind/cooldown
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/datasketches-java#773 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
cpinitiative/usaco-guide#6665 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
trinodb/trino-gateway#1301 ·
I maintainer di solito rispondono entro 1 giorno