namespace ScadaLink.AuditLog.Central; /// /// Tuning knobs for the central /// hosted service (M6-T5). /// Defaults: once every 24 hours, keep at least one future monthly /// boundary ahead of . /// /// /// /// The hosted service drives a daily roll-forward of /// pf_AuditLog_Month: each tick reads the current max boundary and /// SPLITs new monthly boundaries until at least /// future months are covered. The 1-month /// default is intentionally conservative — anything less risks an /// end-of-month race where inserts land in the unbounded tail partition; /// anything more wastes nothing but represents premature commitment. /// /// /// The 24-hour cadence is the cheapest interval that still guarantees /// at-most-one missed boundary in steady state (even a hard failover the /// hosted service can recover on its very next tick). Lowering this below /// an hour would generate more metadata churn than it saves. /// /// public sealed class AuditLogPartitionMaintenanceOptions { /// Period of the maintenance tick in seconds (default 86 400 = 24 h). public int IntervalSeconds { get; set; } = 86_400; /// /// Minimum number of future months that pf_AuditLog_Month must /// cover after each tick. Default 1 — i.e. as of mid-May the partition /// for the next full month (June) must already be present. /// public int LookaheadMonths { get; set; } = 1; }