From aa943f048947c71c4a9ad06c28256a319fa11b24 Mon Sep 17 00:00:00 2001 From: rigelrozanski Date: Thu, 14 Mar 2019 15:41:25 -0400 Subject: [PATCH 1/3] circuit breaker high level explanation --- .pending/improvements/sdk/926-circuit-breaker- | 1 + docs/spec/circuit-breaker/01_concepts.md | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 .pending/improvements/sdk/926-circuit-breaker- create mode 100644 docs/spec/circuit-breaker/01_concepts.md diff --git a/.pending/improvements/sdk/926-circuit-breaker- b/.pending/improvements/sdk/926-circuit-breaker- new file mode 100644 index 000000000000..9b3321e7dee5 --- /dev/null +++ b/.pending/improvements/sdk/926-circuit-breaker- @@ -0,0 +1 @@ +\#926 circuit breaker high level explanation diff --git a/docs/spec/circuit-breaker/01_concepts.md b/docs/spec/circuit-breaker/01_concepts.md new file mode 100644 index 000000000000..00c2057462d6 --- /dev/null +++ b/docs/spec/circuit-breaker/01_concepts.md @@ -0,0 +1,16 @@ +# Concepts + +The intention of the circuit breaker is to have a contingency plan for a +running network which maintains network liveness. This can be achieved through +selectively "pausing" functionality of specific modules on a running network. +The circuit breaker is intended to be enabled through either: + - governance, + - the bonded validator group (for emergencies), + - special transaction (which proves how expected behaviour is broken). + +## Pause state + +The basic pause state of any module simple disables all message routes to +that module. Beyond that, it may be a appropriate for different modules to +process begin-block/end-block in an altered "safe" way. + From 40aebe050934276fb7f7f502e86a7453be0f9695 Mon Sep 17 00:00:00 2001 From: Alexander Bezobchuk Date: Fri, 15 Mar 2019 15:29:00 -0400 Subject: [PATCH 2/3] Apply suggestions from code review Co-Authored-By: rigelrozanski --- docs/spec/circuit-breaker/01_concepts.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/spec/circuit-breaker/01_concepts.md b/docs/spec/circuit-breaker/01_concepts.md index 00c2057462d6..a250eab30e07 100644 --- a/docs/spec/circuit-breaker/01_concepts.md +++ b/docs/spec/circuit-breaker/01_concepts.md @@ -4,13 +4,14 @@ The intention of the circuit breaker is to have a contingency plan for a running network which maintains network liveness. This can be achieved through selectively "pausing" functionality of specific modules on a running network. The circuit breaker is intended to be enabled through either: + - governance, - the bonded validator group (for emergencies), - special transaction (which proves how expected behaviour is broken). ## Pause state -The basic pause state of any module simple disables all message routes to -that module. Beyond that, it may be a appropriate for different modules to +The basic pause state of any module simply disables all message routes to +that module. Beyond that, it may be a appropriate for different modules to process begin-block/end-block in an altered "safe" way. From 6a6d6c0b9d88fce7eb032a87a2b58aa28e08d222 Mon Sep 17 00:00:00 2001 From: rigelrozanski Date: Wed, 20 Mar 2019 21:36:48 -0400 Subject: [PATCH 3/3] @mossid comment --- docs/spec/circuit-breaker/01_concepts.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/spec/circuit-breaker/01_concepts.md b/docs/spec/circuit-breaker/01_concepts.md index 00c2057462d6..daf656f28964 100644 --- a/docs/spec/circuit-breaker/01_concepts.md +++ b/docs/spec/circuit-breaker/01_concepts.md @@ -4,9 +4,9 @@ The intention of the circuit breaker is to have a contingency plan for a running network which maintains network liveness. This can be achieved through selectively "pausing" functionality of specific modules on a running network. The circuit breaker is intended to be enabled through either: - - governance, - - the bonded validator group (for emergencies), - - special transaction (which proves how expected behaviour is broken). + - governance + - for emergencies a special subset of accounts selected by the state machine + - a transaction which proves the expected behaviour is broken ## Pause state