From 3f0891471b25768ffe568888fb53123cd378ef15 Mon Sep 17 00:00:00 2001 From: XYenon Date: Mon, 17 Aug 2026 10:44:49 +0800 Subject: [PATCH] nixos/kvrocks: unwrap list-coerced settings --- nixos/modules/services/databases/kvrocks.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/databases/kvrocks.nix b/nixos/modules/services/databases/kvrocks.nix index d6bb3a1361c5..5710d35848db 100644 --- a/nixos/modules/services/databases/kvrocks.nix +++ b/nixos/modules/services/databases/kvrocks.nix @@ -21,10 +21,11 @@ let isDefaultDir = dataDir == defaultDir; # Defaults match upstream Config field defaults (config.cc). - workers = cfg.settings.workers or 8; - maxBackgroundJobs = cfg.settings."rocksdb.max_background_jobs" or 4; - maxclients = cfg.settings.maxclients or 10240; - maxOpenFiles = cfg.settings."rocksdb.max_open_files" or 8096; + # freeformType uses listsAsDuplicateKeys, so set values are singleton lists. + workers = lib.head (cfg.settings.workers or [ 8 ]); + maxBackgroundJobs = lib.head (cfg.settings."rocksdb.max_background_jobs" or [ 4 ]); + maxclients = lib.head (cfg.settings.maxclients or [ 10240 ]); + maxOpenFiles = lib.head (cfg.settings."rocksdb.max_open_files" or [ 8096 ]); # Thread inventory from server.cc ("Kvrocks threads list") + Server::Start: # always-on: main, workers, task-runner (1), server-cron, compact-check,