summaryrefslogtreecommitdiffstats
path: root/nixos/modules/services
diff options
context:
space:
mode:
authorDaniel Schaefer <git@danielschaefer.me>2019-05-02 08:59:39 +0200
committerDaniel Schaefer <git@danielschaefer.me>2019-06-13 04:36:42 +0200
commit03503121da3305b03b17d9f4fbfe99258cfd195f (patch)
treec51f9481f43db7a424c2d7ed6716a0c5b3d91c8e /nixos/modules/services
parent8e5ba87b36c8640ada623811ec5f22af6fe60d44 (diff)
nixos/cassandra: Don't force SimpleSeedProvider
If the `seedAddresses` is not set, don't force `SimpleSeedProvider` to be in `seed_provider`. This could cause problems in a multi-datacenter deployment when a different seed provider is preferred.
Diffstat (limited to 'nixos/modules/services')
-rw-r--r--nixos/modules/services/databases/cassandra.nix15
1 files changed, 8 insertions, 7 deletions
diff --git a/nixos/modules/services/databases/cassandra.nix b/nixos/modules/services/databases/cassandra.nix
index 452691e42322..fc5812c49df0 100644
--- a/nixos/modules/services/databases/cassandra.nix
+++ b/nixos/modules/services/databases/cassandra.nix
@@ -12,16 +12,17 @@ let
cluster_name = cfg.clusterName;
partitioner = "org.apache.cassandra.dht.Murmur3Partitioner";
endpoint_snitch = "SimpleSnitch";
- seed_provider =
- [{ class_name = "org.apache.cassandra.locator.SimpleSeedProvider";
- parameters = [ { seeds = concatStringsSep "," cfg.seedAddresses; } ];
- }];
data_file_directories = [ "${cfg.homeDir}/data" ];
commitlog_directory = "${cfg.homeDir}/commitlog";
saved_caches_directory = "${cfg.homeDir}/saved_caches";
- } // (if lib.versionAtLeast cfg.package.version "3"
- then { hints_directory = "${cfg.homeDir}/hints"; }
- else {})
+ } // (lib.optionalAttrs (cfg.seedAddresses != []) {
+ seed_provider = [{
+ class_name = "org.apache.cassandra.locator.SimpleSeedProvider";
+ parameters = [ { seeds = concatStringsSep "," cfg.seedAddresses; } ];
+ }];
+ }) // (lib.optionalAttrs (lib.versionAtLeast cfg.package.version "3") {
+ hints_directory = "${cfg.homeDir}/hints";
+ })
);
cassandraConfigWithAddresses = cassandraConfig //
( if cfg.listenAddress == null