Bedrock.DataPlane.Resolver.State (bedrock v0.7.0)
View SourceState structure for Resolver GenServer processes.
Maintains the interval tree for conflict detection, version tracking, and the waiting queue for out-of-order transactions.
Metadata Distribution
The resolver also records system metadata mutations (keys with \xFF prefix, with this resolver's local verdicts) and relays them to commit proxies as exact windows - FDB's stateMutations relay:
last_served- per-proxy exclusive lower bound of the next window; advanced when a window is served. Windows are(last_served, last_version], so consecutive windows to one proxy tile exactly.metadata_window- accumulated verdict-carrying entries in version order, pruned through the minimum served version once every one of the epoch'scommit_proxy_countproxies has been served at least once.
Summary
Types
@type t() :: %Bedrock.DataPlane.Resolver.State{ commit_proxy_count: pos_integer(), conflicts: Bedrock.DataPlane.Resolver.Conflicts.t(), director: pid(), epoch: Bedrock.epoch(), last_served: %{required(pid()) => Bedrock.version()}, last_sweep_time: integer(), last_version: Bedrock.version(), metadata_window: Bedrock.DataPlane.Resolver.MetadataAccumulator.t(), sweep_interval_ms: pos_integer(), version_retention_ms: pos_integer(), waiting: Bedrock.Internal.WaitingList.t() }