More thorough nondeterminism checking
- Lingua principale
- C#
- Stelle
- 1.7k
- Fork
- 335
- Merge medio
- 2g 23h
- PR unite (30g)
- 6
Descrizione
I noticed when trying to create nondeterminism in an orchestrator on purpose that DTFx does not do a very good job at detecting it. It is surprisingly tolerant.
It appears that all it does is essentially to count the orchestrator actions. It matches actions based on their position in the sequence (the EventId); but it does not check if the replayed actions match the history event details (type, arguments, etc).
I think it could perhaps be helpful to do a more precise check and throw a `NondeterminismDetectedException` with a detailed description of the divergence situation (including details about the expected and actual events).
Perhaps this can be an optional feature so as to not break legacy deployments.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Inizia esaminando il replay corrente dell’orchestratore di DTFx e il comportamento di corrispondenza di azioni/EventId, quindi riproduci l’orchestratore intenzionalmente non deterministico descritto nell’issue. Confronta le azioni riprodotte con i tipi di evento e gli argomenti della cronologia, e chiarisci il comportamento opzionale previsto e i requisiti di compatibilità per NondeterminismDetectedException.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- csharp
- Ambito
- distributed-systems
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 30/100