Packages

final class HalfOpen extends State

State of the CircuitBreaker in which the circuit breaker has already allowed a task to go through, as a reset attempt, in order to test the connection.

Contract:

  • The first task when Open has expired is allowed through without failing fast, just before the circuit breaker is evolved into the HalfOpen state
  • All tasks attempted in HalfOpen fail-fast with an exception just as in Open state
  • If that task attempt succeeds, the breaker is reset back to the Closed state, with the resetTimeout and the failures count also reset to initial values
  • If the first call fails, the breaker is tripped again into the Open state (the resetTimeout is multiplied by the exponential backoff factor)
Source
CircuitBreaker.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. HalfOpen
  2. State
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. def equals(other: Any): Boolean
    Definition Classes
    HalfOpen → AnyRef → Any
  2. def hashCode(): Int
    Definition Classes
    HalfOpen → AnyRef → Any
  3. val resetTimeout: FiniteDuration