Implement in-process multi-dataset sync isolation across core, network, persistence, and tests
All checks were successful
NuGet Package Publish / nuget (push) Successful in 1m14s
All checks were successful
NuGet Package Publish / nuget (push) Successful in 1m14s
This commit is contained in:
45
src/ZB.MOM.WW.CBDDC.Core/DatasetSyncOptions.cs
Normal file
45
src/ZB.MOM.WW.CBDDC.Core/DatasetSyncOptions.cs
Normal file
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace ZB.MOM.WW.CBDDC.Core;
|
||||
|
||||
/// <summary>
|
||||
/// Configures synchronization behavior for a single dataset pipeline.
|
||||
/// </summary>
|
||||
public sealed class DatasetSyncOptions
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the dataset identifier.
|
||||
/// </summary>
|
||||
public string DatasetId { get; set; } = global::ZB.MOM.WW.CBDDC.Core.DatasetId.Primary;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this dataset pipeline is enabled.
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the delay between sync loop cycles.
|
||||
/// </summary>
|
||||
public TimeSpan SyncLoopDelay { get; set; } = TimeSpan.FromSeconds(2);
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the maximum number of peers selected per cycle.
|
||||
/// </summary>
|
||||
public int MaxPeersPerCycle { get; set; } = 3;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the maximum number of oplog entries pushed or pulled in one cycle.
|
||||
/// </summary>
|
||||
public int? MaxEntriesPerCycle { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets an optional maintenance interval override for this dataset.
|
||||
/// </summary>
|
||||
public TimeSpan? MaintenanceIntervalOverride { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets collection interests for this dataset pipeline.
|
||||
/// </summary>
|
||||
public List<string> InterestingCollections { get; set; } = [];
|
||||
}
|
||||
Reference in New Issue
Block a user