Ferricstore.Store.ShardSupervisor (ferricstore v0.3.6)

Copy Markdown View Source

Supervises all Ferricstore.Store.Shard GenServers.

Each child is a shard GenServer responsible for one Bitcask partition and its corresponding ETS hot cache. The supervisor uses a :one_for_one strategy so that a single shard crash does not take down the others.

Options

  • :data_dir (required) -- base directory for Bitcask data files
  • :shard_count -- number of shards to start (default: 4)

Summary

Functions

Returns a specification to start this module under a supervisor.

Starts the shard supervisor and all child shards.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

start_link(opts)

@spec start_link(keyword()) :: Supervisor.on_start()

Starts the shard supervisor and all child shards.