ExESDB.StoreSystem (ex_esdb v0.1.2)

Supervisor for store-related components.

This supervisor manages the store lifecycle and clustering components. Uses :rest_for_one strategy to ensure proper startup order.

Startup order (critical for distributed coordination):

  1. Store: Core store GenServer - must be fully operational first
  2. StoreCluster: Clustering coordination - depends on Store being ready
  3. StoreRegistry: Distributed store registry - starts after Store system is stable

This order ensures StoreRegistry only announces a store that is actually ready to handle requests, preventing race conditions in distributed environments.

Summary

Functions

Returns a specification to start this module under a supervisor.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

start_link(opts)