Skip to content

Commit

Permalink
use correct SMD
Browse files Browse the repository at this point in the history
  • Loading branch information
badrishc committed Mar 8, 2025
1 parent 5b4c646 commit 3e8c2c7
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 1 deletion.
2 changes: 2 additions & 0 deletions libs/server/Servers/GarnetServerOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -495,6 +495,7 @@ public KVSettings<SpanByte, SpanByte> GetSettings(ILoggerFactory loggerFactory,
MutableFraction = MutablePercent / 100.0,
PageSize = 1L << PageSizeBits(),
Epoch = Epoch,
StateMachineDriver = StateMachineDriver,
loggerFactory = loggerFactory,
logger = loggerFactory?.CreateLogger("TsavoriteKV [main]")
};
Expand Down Expand Up @@ -653,6 +654,7 @@ public KVSettings<byte[], IGarnetObject> GetObjectStoreSettings(ILoggerFactory l
MutableFraction = ObjectStoreMutablePercent / 100.0,
PageSize = 1L << ObjectStorePageSizeBits(),
Epoch = Epoch,
StateMachineDriver = StateMachineDriver,
loggerFactory = loggerFactory,
logger = loggerFactory?.CreateLogger("TsavoriteKV [obj]")
};
Expand Down
5 changes: 5 additions & 0 deletions libs/storage/Tsavorite/cs/src/core/Index/Common/KVSettings.cs
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,11 @@ public sealed class KVSettings<TKey, TValue> : IDisposable
/// </summary>
public LightEpoch Epoch = null;

/// <summary>
/// State machine driver for the store
/// </summary>
public StateMachineDriver StateMachineDriver = null;

/// <summary>
/// Create default configuration settings for TsavoriteKV. You need to create and specify LogDevice
/// explicitly with this API.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ public TsavoriteKV(KVSettings<TKey, TValue> kvSettings, TStoreFunctions storeFun
LockTable = new OverflowBucketLockTable<TKey, TValue, TStoreFunctions, TAllocator>(this);
RevivificationManager = new(this, isFixedLenReviv, kvSettings.RevivificationSettings, logSettings);

stateMachineDriver = new(epoch, kvSettings.logger ?? kvSettings.loggerFactory?.CreateLogger($"StateMachineDriver"));
stateMachineDriver = kvSettings.StateMachineDriver ?? new(epoch, kvSettings.logger ?? kvSettings.loggerFactory?.CreateLogger($"StateMachineDriver"));

if (kvSettings.TryRecoverLatest)
{
Expand Down

0 comments on commit 3e8c2c7

Please sign in to comment.