Class ResourceOptions
Runtime knobs for the database engine's resource subsystems (transaction chain, WAL ring buffer, checkpoint cadence, page-CRC policy). Set at startup via Resources, immutable thereafter.
public class ResourceOptions
- Inheritance
-
ResourceOptions
- Inherited Members
Remarks
Every property here is wired — it drives real engine behavior and is range-validated at DI resolution by
DatabaseEngineOptionsValidator. (A prior aspirational memory-budget surface — page-cache pages, WAL segment
sizing, a shadow-buffer budget and a never-called Validate() — was removed in #148 as vestigial: it governed no
allocations. The real cache size lives on DatabaseCacheSize; real WAL segment sizing on
WalWriterOptions.)
Constructors
ResourceOptions()
public ResourceOptions()
Properties
CheckpointBarrierTimeoutMs
Bounded budget (milliseconds) for the checkpoint cycle's WAL durability barrier waits (CK-02). On timeout the cycle raises a transient WalBackPressureTimeoutException, which the failure classification (CK-06) treats as Degraded + retry-next-cycle — never a permanent stall.
public int CheckpointBarrierTimeoutMs { get; set; }
Property Value
CheckpointIntervalMs
Checkpoint interval when idle (milliseconds).
public int CheckpointIntervalMs { get; set; }
Property Value
MaxActiveTransactions
Maximum concurrent active transactions. Beyond this, CreateTransaction throws ResourceExhaustedException.
public int MaxActiveTransactions { get; set; }
Property Value
PageChecksumVerification
Controls when page CRC verification occurs. OnLoad verifies on every page load (higher safety, slight overhead). RecoveryOnly only during crash recovery (lower overhead).
public PageChecksumVerification PageChecksumVerification { get; set; }
Property Value
WalRingBufferSizeBytes
Size of the WAL ring buffer in bytes. When full, commit threads block until the WAL writer drains it.
public int WalRingBufferSizeBytes { get; set; }