aboutsummaryrefslogtreecommitdiff
path: root/plugins/ObjectCacheServer/src
diff options
context:
space:
mode:
authorLibravatar vnugent <public@vaughnnugent.com>2024-03-18 21:57:57 -0400
committerLibravatar vnugent <public@vaughnnugent.com>2024-03-18 21:57:57 -0400
commitc74440ff12daa03cc4b7792d0c3baad46a11a465 (patch)
treef0aab077a06287541ee775511f54089ae6a0f459 /plugins/ObjectCacheServer/src
parent9983582db08d3e6c456295ea96e482cbb4f31f42 (diff)
feat: message checksum support & dynamic serializers
Diffstat (limited to 'plugins/ObjectCacheServer/src')
-rw-r--r--plugins/ObjectCacheServer/src/Cache/CacheMemoryConfiguration.cs3
-rw-r--r--plugins/ObjectCacheServer/src/ObjectCacheSystemState.cs14
2 files changed, 13 insertions, 4 deletions
diff --git a/plugins/ObjectCacheServer/src/Cache/CacheMemoryConfiguration.cs b/plugins/ObjectCacheServer/src/Cache/CacheMemoryConfiguration.cs
index c404cc5..0b81447 100644
--- a/plugins/ObjectCacheServer/src/Cache/CacheMemoryConfiguration.cs
+++ b/plugins/ObjectCacheServer/src/Cache/CacheMemoryConfiguration.cs
@@ -54,5 +54,8 @@ namespace VNLib.Data.Caching.ObjectCache.Server.Cache
[JsonPropertyName("memory_lib_path")]
public string? ExternLibPath { get; set; }
+
+ [JsonPropertyName("enable_checksums")]
+ public bool EnableChecksums { get; set; } = true;
}
}
diff --git a/plugins/ObjectCacheServer/src/ObjectCacheSystemState.cs b/plugins/ObjectCacheServer/src/ObjectCacheSystemState.cs
index cd5bf1b..f8ce8a9 100644
--- a/plugins/ObjectCacheServer/src/ObjectCacheSystemState.cs
+++ b/plugins/ObjectCacheServer/src/ObjectCacheSystemState.cs
@@ -187,15 +187,21 @@ namespace VNLib.Data.Caching.ObjectCache.Server
CacheListenerPubQueue queue = new(plugin, PeerEventQueue);
- //Must register background worker to listen for changes
+ //Must register the queue background worker to listen for changes
_ = plugin.ObserveWork(queue, 150);
+ BlobCacheListenerConfig conf = new()
+ {
+ Log = plugin.Log.CreateScope(CacheConstants.LogScopes.BlobCacheListener),
+ MemoryManager = new SharedHeapFBMMemoryManager(SharedCacheHeap),
+ EnableMessageChecksums = MemoryConfiguration.EnableChecksums,
+ };
+
//Endpoint only allows for a single reader
Listener = new(
plugin.LoadMemoryCacheSystem(config, manager, MemoryConfiguration),
- queue,
- plugin.Log.CreateScope(CacheConstants.LogScopes.BlobCacheListener),
- new SharedHeapFBMMemoryManager(SharedCacheHeap)
+ conf,
+ queue
);
InternalStore = new CacheStore(Listener.Cache);