# Module ra_system

- Data Types
- Function Index
- Function Details

## Data Types

### config()

    config() =
        #{name := atom(),
          names := names(),
          data_dir := file:filename(),
          wal_data_dir => file:filename(),
          segment_max_entries => non_neg_integer(),
          wal_max_size_bytes => non_neg_integer(),
          wal_compute_checksums => boolean(),
          wal_max_batch_size => non_neg_integer(),
          wal_max_entries => non_neg_integer(),
          wal_write_strategy => default | o_sync | sync_after_notify,
          wal_sync_method => datasync | sync | none,
          wal_hibernate_after => non_neg_integer(),
          wal_garbage_collect => boolean(),
          wal_pre_allocate => boolean(),
          snapshot_chunk_size => non_neg_integer(),
          receive_snapshot_timeout => non_neg_integer()}

### names()

    names() =
        #{wal := atom(),
          wal_sup := atom(),
          log_sup := atom(),
          log_ets := atom(),
          log_meta := atom(),
          open_mem_tbls := atom(),
          closed_mem_tbls := atom(),
          segment_writer := atom(),
          server_sup := atom(),
          directory := atom(),
          directory_rev := atom()}

## Function Index

start/1 |
start_default/0 |
default_config/0 |
derive_names/1 |
store/1 |
fetch/1 |
fetch/2 |
lookup_name/2 |

## Function Details

### start/1

    start(Config :: ra_system:config()) -> supervisor:startchild_ret()

### start_default/0

    start_default() -> supervisor:startchild_ret()

### default_config/0

    default_config() -> ra_system:config()

### derive_names/1

`derive_names(SysName) -> any()`

### store/1

    store(Config :: config()) -> ok

### fetch/1

    fetch(Name :: atom()) -> config() | undefined

### fetch/2

    fetch(Name :: atom(), Node :: atom()) ->
             config() | undefined | {badrpc, term()}

### lookup_name/2

    lookup_name(System :: atom(), Key :: atom()) ->
                   {ok, atom()} | {error, system_not_started}

Generated by EDoc