diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 09e7fc5..51ac7c0 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -68,18 +68,19 @@ This continues until all scans finish. ```mermaid stateDiagram-v2 -[*] --> PollForStatus +[*] --> ManageScans state fork2 <> -PollForStatus --> fork2 +ManageScans --> fork2 fork2 --> CheckBadgerScan1 fork2 --> CheckBadgerScan2 fork2 --> CheckBadgerScanN -state ManageInProgressScans { +state PollInProgressScansForStatus { err1: CheckForFailure err2: CheckForFailure err3: CheckForFailure + rei1: BadgerInit (CreateDroplet ... StartScan) pro1: ExtractProgress pro2: ExtractProgress pro3: ExtractProgress @@ -89,6 +90,14 @@ state ManageInProgressScans { state CheckBadgerScan1 { [*] --> err1 + + state scan1_failed <> + err1 --> scan1_failed + scan1_failed --> rei1 : Yes, re-initialize + scan1_failed --> pro1 : No + + rei1 --> [*] + err1 --> pro1 pro1 --> sta1 sta1 --> [*] @@ -114,12 +123,12 @@ CheckBadgerScan1 --> join2 CheckBadgerScan2 --> join2 CheckBadgerScanN --> join2 -state check1 <> -join2 --> check1 -check1 --> PrintProgress : One or more scans still running -check1 --> MergeResults : All scans finished +state all_finished <> +join2 --> all_finished +all_finished --> PrintProgress : One or more scans still running +all_finished --> MergeResults : All scans finished -PrintProgress --> PollForStatus +PrintProgress --> ManageScans MergeResults --> [*] ```