Description
When external dependencies (disk, network, storage) are slow or failing, ApexStore should fail fast instead of queuing requests that will time out anyway.
Implementation
- Add
CircuitBreaker wrapper around critical I/O paths (WAL fsync, SSTable reads, compaction)
- Configurable thresholds: failure count, timeout window, half-open retry interval
- States: CLOSED (normal), OPEN (fail fast), HALF_OPEN (test recovery)
- Expose circuit state in
/metrics endpoint
- Log state transitions for alerting
Configuration
resilience:
circuit_breaker:
wal_fsync:
failure_threshold: 5
timeout_ms: 10000
half_open_after_ms: 30000
compaction:
failure_threshold: 3
timeout_ms: 60000
Labels
Description
When external dependencies (disk, network, storage) are slow or failing, ApexStore should fail fast instead of queuing requests that will time out anyway.
Implementation
CircuitBreakerwrapper around critical I/O paths (WAL fsync, SSTable reads, compaction)/metricsendpointConfiguration
Labels