Info : Copyright 1999-2023 The FreeRADIUS server project and contributors Info : There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A Info : PARTICULAR PURPOSE Info : You may redistribute copies of FreeRADIUS under the terms of the Info : GNU General Public License Info : For more information about these matters, see the file named COPYRIGHT Info : Starting - reading configuration files ... including configuration file src/tests/modules//unit_test_module.conf including configuration file raddb/mods-enabled/always including configuration file raddb/mods-enabled/pap including configuration file src/tests/modules/redis//module.conf Not including file src/tests/modules/redis//global.conf: ENOENT: No such file or directory Not including file src/tests/modules/redis//triggers.conf: ENOENT: No such file or directory Not including file src/tests/modules/redis//clients.conf: ENOENT: No such file or directory Loaded module process_radius including configuration file src/tests/modules/redis/cluster_key.unlang including configuration file src/tests/modules/redis/cluster_reset.inc Not including file src/tests/modules/redis//policy.conf: ENOENT: No such file or directory Parsing initial logging configuration. main { prefix = "/usr/local" log { destination = "files" syslog_facility = daemon local_state_dir = "/usr/local/var" logdir = "/usr/local/var/log" file = "/usr/local/var/log/radius.log" suppress_secrets = no } } Parsing security rules to bootstrap UID / GID / chroot / etc. main { log { } security { allow_core_dumps = no allow_vulnerable_openssl = yes openssl_fips_mode = no } name = "unit_test_module" local_state_dir = "/usr/local/var" run_dir = "/usr/local/var/run/unit_test_module" } Ignoring configured UID / GID / chroot as we're running in debug mode Parsing main configuration main { server default { namespace = radius radius { Access-Request { log { stripped_names = no auth = no auth_badpass = no auth_goodpass = no msg_denied = "You are already logged in - access denied" } session { timeout = 15 max = 4096 } } } Loaded module proto_radius listen { type = Access-Request limit { cleanup_delay = 5.0 idle_timeout = 30.0 nak_lifetime = 30.0 max_connections = 1024 max_clients = 256 max_pending_packets = 256 } priority { Access-Request = high Accounting-Request = low CoA-Request = normal Disconnect-Request = low Status-Server = now } } } log { } security { } sbin_dir = "/usr/local/sbin" logdir = "/usr/local/var/log" radacctdir = "/usr/local/var/log/radacct" reverse_lookups = no hostname_lookups = yes max_request_time = 30 pidfile = "/usr/local/var/run/unit_test_module/radiusd.pid" debug_level = 0 max_requests = 0 resources { } thread { num_networks = 1 Dynamically determined thread.workers = 4 num_workers = 4 openssl_async_pool_init = 64 openssl_async_pool_max = 1024 } migrate { } interpret { } } Info : Switching to configured log settings Debug : unit_test_module: #### Loading Clients #### Debug : client test { Debug : ipaddr = 127.0.0.1 Debug : secret = <<< secret >>> Debug : shortname = "test" Debug : nas_type = "test" Debug : limit { Debug : max_connections = 16 Debug : lifetime = 0 Debug : idle_timeout = 30s Debug : } Debug : } Warn : trigger { ... } subsection not found, triggers will be disabled Debug : #### Instantiating libraries #### Debug : #### Bootstrapping process modules #### Debug : Bootstrapping process_radius "default" Debug : Creating Auth-Type = pap Debug : #### Bootstrapping protocol modules #### Debug : Bootstrapping proto_radius "default.radius" Debug : #### Instantiating libraries #### Debug : #### Bootstrapping modules #### Debug : modules { Debug : Loaded module rlm_always Debug : always reject { Debug : rcode = reject Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : always fail { Debug : rcode = fail Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : always ok { Debug : rcode = ok Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : always handled { Debug : rcode = handled Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : always invalid { Debug : rcode = invalid Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : always disallow { Debug : rcode = disallow Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : always notfound { Debug : rcode = notfound Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : always noop { Debug : rcode = noop Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : always updated { Debug : rcode = updated Debug : simulcount = 0 Debug : mpp = no Debug : } Debug : Loaded module rlm_pap Debug : pap { Debug : normalise = yes Debug : } Info : libfreeradius-redis: libhiredis version: 0.14.1 Debug : Loaded module rlm_redis Debug : redis { Debug : lua { Debug : function hello_world { Debug : body = 'return "hello world"' Debug : } Debug : function concat_args_keys { Debug : body = "return table.concat(KEYS, ',') .. ',' .. table.concat(ARGV, ',')" Debug : } Debug : function multiline { Debug : body = "if ARGV[1] == '0' then\t\t\t\t\treturn 0\t\t\t\telse\t\t\t\t\treturn 1\t\t\t\tend" Debug : } Debug : } Debug : server = 127.0.0.1:30001 Debug : server = 127.0.0.1:30002 Debug : server = 127.0.0.1:30003 Debug : server = 127.0.0.1:30004 Debug : server = 127.0.0.1:30005 Debug : server = 127.0.0.1:30006 Debug : port = 6379 Debug : database = 0 Debug : use_tls = no Debug : use_cluster_map = yes Debug : max_nodes = 20 Debug : max_alt = 3 Debug : max_redirects = 2 Debug : } Debug : Loaded module rlm_delay Debug : delay { Debug : relative = no Debug : force_reschedule = no Debug : } Debug : Loaded module rlm_exec Debug : exec { Debug : wait = yes Debug : shell_escape = yes Debug : env_inherit = yes Debug : } Debug : #### Bootstrapping rlm modules #### Debug : Bootstrapping rlm_delay "delay" Debug : Bootstrapping rlm_always "disallow" Debug : Bootstrapping rlm_exec "exec" Debug : Bootstrapping rlm_always "fail" Debug : Bootstrapping rlm_always "handled" Debug : Bootstrapping rlm_always "invalid" Debug : Bootstrapping rlm_always "noop" Debug : Bootstrapping rlm_always "notfound" Debug : Bootstrapping rlm_always "ok" Debug : Bootstrapping rlm_redis "redis" Debug : Bootstrapping rlm_always "reject" Debug : Bootstrapping rlm_always "updated" Debug : } # modules Debug : #### Instantiating listeners #### Debug : Compiling policies in server default { ... } Debug : Instantiating proto_radius "default.radius" Debug : Instantiating process_radius "default" Debug : Compiling policies in - recv Access-Request {...} Debug : src/tests/modules/redis/cluster_reset.inc[37]: Skipping contents of 'else' due to previous 'if ("" == '') ' being always being taken. Warn : src/tests/modules/redis/cluster_reset.inc[82]: Skipping remaining instructions due to 'break' Warn : src/tests/modules/redis/cluster_reset.inc[101]: Skipping remaining instructions due to 'return' Debug : Compiling policies in - authenticate pap {...} Warn : src/lib/server/virtual_servers.c[311]: radius { ... } section is unused Debug : #### Instantiating rlm modules #### Debug : Instantiating rlm_always "disallow" Debug : Instantiating rlm_always "fail" Debug : Instantiating rlm_always "handled" Debug : Instantiating rlm_always "invalid" Debug : Instantiating rlm_always "noop" Debug : Instantiating rlm_always "notfound" Debug : Instantiating rlm_always "ok" Debug : Instantiating rlm_pap "pap" Debug : Instantiating rlm_redis "redis" Debug : rlm_redis (redis) [1] - Initialising connection pool Debug : pool { Debug : start = 0 Debug : min = 0 Debug : max = 12 Debug : max_pending = 0 Debug : spare = 0 Debug : uses = 0 Debug : lifetime = 86400 Debug : cleanup_interval = 300 Debug : idle_timeout = 600 Debug : connect_timeout = 3.0 Debug : held_trigger_min = 0.0 Debug : held_trigger_max = 0.5 Debug : retry_delay = 0 Debug : spread = no Debug : } Debug : rlm_redis (redis) [1] - 0 of 0 connections in use. You may need to increase "spare" Debug : rlm_redis (redis) [1] - Opening additional connection (0), 1 of 12 pending slots used Debug : rlm_redis (redis) - [1] Connecting to node 127.0.0.1:30001 Debug : rlm_redis (redis) [1] - Reserved connection (0) Debug : Loaded lua function "hello_world" onto node Debug : Loaded lua function "concat_args_keys" onto node Debug : Loaded lua function "multiline" onto node Debug : rlm_redis (redis) [1] - Released connection (0) Debug : Instantiating rlm_always "reject" Debug : Instantiating rlm_always "updated" Debug : User-Name = "john" Debug : User-Password = "testing123" Debug : Net = { Src = { IP = 127.0.0.1, Port = 18120 }, Dst = { IP = 127.0.0.1, Port = 1812 }, Timestamp = "Dec 20 2023 16:11:08 UTC" } Debug : (0) default { Debug : (0) Received Access-Request ID -1 from 127.0.0.1:18120 to 127.0.0.1:1812 Debug : (0) User-Name = "john" Debug : (0) User-Password = "testing123" Debug : (0) Net { Debug : (0) Src { Debug : (0) IP = 127.0.0.1 Debug : (0) Port = 18120 Debug : (0) } Debug : (0) Dst { Debug : (0) IP = 127.0.0.1 Debug : (0) Port = 1812 Debug : (0) } Debug : (0) Timestamp = "Dec 20 2023 16:11:08 UTC" Debug : (0) } Debug : (0) Packet-Type = Access-Request Debug : (0) Running 'recv Access-Request' from file src/tests/modules//unit_test_module.conf Debug : (0) recv Access-Request { Debug : (0) &control += { Debug : (0) &Tmp-Integer-0 = 0 Debug : (0) &Tmp-Integer-0 = 1 Debug : (0) &Tmp-Integer-0 = 2 Debug : (0) &Tmp-Integer-0 = 3 Debug : (0) &Tmp-Integer-0 = 4 Debug : (0) &Tmp-Integer-0 = 5 Debug : (0) &Tmp-Integer-0 = 6 Debug : (0) &Tmp-Integer-0 = 7 Debug : (0) &Tmp-Integer-0 = 8 Debug : (0) &Tmp-Integer-0 = 9 Debug : (0) &Tmp-Integer-0 = 10 Debug : (0) &Tmp-Integer-0 = 11 Debug : (0) &Tmp-Integer-0 = 12 Debug : (0) &Tmp-Integer-0 = 13 Debug : (0) &Tmp-Integer-0 = 14 Debug : (0) &Tmp-Integer-0 = 15 Debug : (0) &Tmp-Integer-0 = 16 Debug : (0) &Tmp-Integer-0 = 17 Debug : (0) &Tmp-Integer-0 = 18 Debug : (0) &Tmp-Integer-0 = 19 Debug : (0) &Tmp-Integer-0 = 20 Debug : (0) &Tmp-Integer-0 = 21 Debug : (0) } Debug : (0) | %randstr({aaaaaaaa}) Debug : (0) | --> ipsKGrCH Debug : (0) &control.Tmp-String-0 := 1-ipsKGrCH Debug : (0) | %randstr({aaaaaaaa}) Debug : (0) | --> SHvmVaT6 Debug : (0) &control.Tmp-String-1 := 2-SHvmVaT6 Debug : (0) | %randstr({aaaaaaaa}) Debug : (0) | --> EspKrUiX Debug : (0) &control.Tmp-String-2 := 3-EspKrUiX Debug : (0) if ("" == '') { Debug : (0) &control.Tmp-String-8 := scripts/ci/redis-setup.sh Debug : (0) } # if ("" == '') (noop) Debug : (0) | %exec(%{control.Tmp-String-8}, stop) Debug : (0) | %{%exec(%{control.Tmp-String-8}, stop)} Debug : (0) | exec Debug : (0) | control.Tmp-String-8 Debug : (0) | %{control.Tmp-String-8} Debug : (0) | --> scripts/ci/redis-setup.sh Debug : (0) | %exec({scripts/ci/redis-setup.sh}{stop}) Debug : (0) pid 160499 (stdout) - Stopping 30001\n Debug : (0) pid 160499 (stdout) - Stopping 30002\n Debug : (0) pid 160499 (stdout) - Stopping 30003\n Debug : (0) pid 160499 (stdout) - Stopping 30004\n Debug : (0) pid 160499 (stdout) - Stopping 30005\n Debug : (0) pid 160499 (stdout) - Stopping 30006\n Debug : (0) Program exited with status code 0 Debug : (0) xlat - Resuming execution Debug : (0) | %exec(...) Debug : (0) | --> Stopping 30001\nStopping 30002\nStopping 30003\nStopping 30004\nStopping 30005\nStopping 30006 Debug : (0) &Tmp-String-0 := Stopping 30001\nStopping 30002\nStopping 30003\nStopping 30004\nStopping 30005\nStopping 30006 Debug : (0) | %exec(%{control.Tmp-String-8}, clean) Debug : (0) | %{%exec(%{control.Tmp-String-8}, clean)} Debug : (0) | exec Debug : (0) | control.Tmp-String-8 Debug : (0) | %{control.Tmp-String-8} Debug : (0) | --> scripts/ci/redis-setup.sh Debug : (0) | %exec({scripts/ci/redis-setup.sh}{clean}) Debug : (0) pid 160525 (stdout) - Cleaning *.log\n Debug : (0) pid 160525 (stdout) - Cleaning appendonly*.aof\n Debug : (0) pid 160525 (stdout) - Cleaning dump-*.rdb\nCleaning nodes-*.conf\n Debug : (0) Program exited with status code 0 Debug : (0) xlat - Resuming execution Debug : (0) | %exec(...) Debug : (0) | --> Cleaning *.log\nCleaning appendonly*.aof\nCleaning dump-*.rdb\nCleaning nodes-*.conf Debug : (0) &Tmp-String-0 := Cleaning *.log\nCleaning appendonly*.aof\nCleaning dump-*.rdb\nCleaning nodes-*.conf Debug : (0) | %exec(%{control.Tmp-String-8}, start) Debug : (0) | %{%exec(%{control.Tmp-String-8}, start)} Debug : (0) | exec Debug : (0) | control.Tmp-String-8 Debug : (0) | %{control.Tmp-String-8} Debug : (0) | --> scripts/ci/redis-setup.sh Debug : (0) | %exec({scripts/ci/redis-setup.sh}{start}) Debug : (0) pid 160543 (stdout) - Starting 30001\n Debug : (0) pid 160543 (stdout) - Starting 30002\n Debug : (0) pid 160543 (stdout) - Starting 30003\n Debug : (0) pid 160543 (stdout) - Starting 30004\n Debug : (0) pid 160543 (stdout) - Starting 30005\n Debug : (0) pid 160543 (stdout) - Starting 30006\n Debug : (0) Program exited with status code 0 Debug : (0) xlat - Resuming execution Debug : (0) | %exec(...) Debug : (0) | --> Starting 30001\nStarting 30002\nStarting 30003\nStarting 30004\nStarting 30005\nStarting 30006 Debug : (0) &Tmp-String-0 := Starting 30001\nStarting 30002\nStarting 30003\nStarting 30004\nStarting 30005\nStarting 30006 Debug : (0) | %exec(%{control.Tmp-String-8}, create) Debug : (0) | %{%exec(%{control.Tmp-String-8}, create)} Debug : (0) | exec Debug : (0) | control.Tmp-String-8 Debug : (0) | %{control.Tmp-String-8} Debug : (0) | --> scripts/ci/redis-setup.sh Debug : (0) | %exec({scripts/ci/redis-setup.sh}{create}) Debug : (0) pid 160589 (stdout) - \033[29;1m>>> Performing hash slots allocation on 6 nodes...\n\033[0mMaster[0] -> Slots 0 - 5460\nMaster[1] -> Slots 5461 - 10922\nMaster[2] -> Slots 10923 - 16383\nAdding replica 127.0.0.1:30005 to 127.0.0.1:30001\nAdding replica 127.0.0.1:30006 to 127.0.0.1:30002\nAdding replica 127.0.0.1:30004 to 127.0.0.1:30003\n\033[29;1m>>> Trying to optimize slaves allocation for anti-affinity\n\033[0m\033[33;1m[WARNING] Some slaves are in the same host as their master\n\033[0mM: 970857d5c108f0b2dec0f3bed0ad17c483eae2dc 127.0.0.1:30001\n slots:[0-5460] (5461 slots) master\nM: cafc83fe3e12be78cd9e0b56add515e5644a4849 127.0.0.1:30002\n slots:[5461-10922] (5462 slots) master\nM: 83c361bac43f4efbe8d5e6042b03a1e449031bd5 127.0.0.1:30003\n slots:[10923-16383] (5461 slots) master\nS: 922088660be548c35ebae160ae886d55989bc501 127.0.0.1:30004\n replicates 970857d5c108f0b2dec0f3bed0ad17c483eae2dc\nS: 73679e76aea58456d221c4b332d2f3e2d68cd836 127.0.0.1:30005\n replicates cafc83fe3e12be78cd9e0b56add515e5644a4849\nS: d09f6e6df0d73361d006a1ed5d084fe544627c5d 127.0.0.1:30006\n replicates 83c361bac43f4efbe8d5e6042b03a1e449031bd5\nCan I set the above configuration? (type 'yes' to accept): Debug : (0) pid 160589 (stdout) - \033[29;1m>>> Nodes configuration updated\n\033[0m\033[29;1m>>> Assign a different config epoch to each node\n\033[0m\033[29;1m>>> Sending CLUSTER MEET messages to join the cluster\n\033[0mWaiting for the cluster to join\n\n\033[29;1m>>> Performing Cluster Check (using node 127.0.0.1:30001)\n\033[0mM: 970857d5c108f0b2dec0f3bed0ad17c483eae2dc 127.0.0.1:30001\n slots:[0-5460] (5461 slots) master\n 1 additional replica(s)\nM: cafc83fe3e12be78cd9e0b56add515e5644a4849 127.0.0.1:30002\n slots:[5461-10922] (5462 slots) master\n 1 additional replica(s)\nS: 922088660be548c35ebae160ae886d55989bc501 127.0.0.1:30004\n slots: (0 slots) slave\n replicates 970857d5c108f0b2dec0f3bed0ad17c483eae2dc\nM: 83c361bac43f4efbe8d5e6042b03a1e449031bd5 127.0.0.1:30003\n slots:[10923-16383] (5461 slots) master\n 1 additional replica(s)\nS: 73679e76aea58456d221c4b332d2f3e2d68cd836 127.0.0.1:30005\n slots: (0 slots) slave\n replicates cafc83fe3e12be78cd9e0b56add515e5644a4849\nS: d09f6e6df0d73361d006a1ed5d084fe544627c5d 127.0.0.1:30006\n slots: (0 slots) slave\n replicates 83c361bac43f4efbe8d5e6042b03a1e449031bd5\n\033[32;1m[OK] All nodes agree about slots configuration.\n\033[0m\033[29;1m>>> Check for open slots...\n\033[0m\033[29;1m>>> Check slots coverage...\n\033[0m\033[32;1m[OK] All 16384 slots covered.\n\033[0m Debug : (0) Program exited with status code 0 Debug : (0) xlat - Resuming execution Debug : (0) | %exec(...) Debug : (0) | --> \033[29;1m>>> Performing hash slots allocation on 6 nodes...\n\033[0mMaster[0] -> Slots 0 - 5460\nMaster[1] -> Slots 5461 - 10922\nMaster[2] -> Slots 10923 - 16383\nAdding replica 127.0.0.1:30005 to 127.0.0.1:30001\nAdding replica 127.0.0.1:30006 to 127.0.0.1:30002\nAdding replica 127.0.0.1:30004 to 127.0.0.1:30003\n\033[29;1m>>> Trying to optimize slaves allocation for anti-affinity\n\033[0m\033[33;1m[WARNING] Some slaves are in the same host as their master\n\033[0mM: 970857d5c108f0b2dec0f3bed0ad17c483eae2dc 127.0.0.1:30001\n slots:[0-5460] (5461 slots) master\nM: cafc83fe3e12be78cd9e0b56add515e5644a4849 127.0.0.1:30002\n slots:[5461-10922] (5462 slots) master\nM: 83c361bac43f4efbe8d5e6042b03a1e449031bd5 127.0.0.1:30003\n slots:[10923-16383] (5461 slots) master\nS: 922088660be548c35ebae160ae886d55989bc501 127.0.0.1:30004\n replicates 970857d5c108f0b2dec0f3bed0ad17c483eae2dc\nS: 73679e76aea58456d221c4b332d2f3e2d68cd836 127.0.0.1:30005\n replicates cafc83fe3e12be78cd9e0b56add515e5644a4849\nS: d09f6e6df0d73361d006a1ed5d084fe544627c5d 127.0.0.1:30006\n replicates 83c361bac43f4efbe8d5e6042b03a1e449031bd5\nCan I set the above configuration? (type 'yes' to accept): \033[29;1m>>> Nodes configuration updated\n\033[0m\033[29;1m>>> Assign a different config epoch to each node\n\033[0m\033[29;1m>>> Sending CLUSTER MEET messages to join the cluster\n\033[0mWaiting for the cluster to join\n\n\033[29;1m>>> Performing Cluster Check (using node 127.0.0.1:30001)\n\033[0mM: 970857d5c108f0b2dec0f3bed0ad17c483eae2dc 127.0.0.1:30001\n slots:[0-5460] (5461 slots) master\n 1 additional replica(s)\nM: cafc83fe3e12be78cd9e0b56add515e5644a4849 127.0.0.1:30002\n slots:[5461-10922] (5462 slots) master\n 1 additional replica(s)\nS: 922088660be548c35ebae160ae886d55989bc501 127.0.0.1:30004\n slots: (0 slots) slave\n replicates 970857d5c108f0b2dec0f3bed0ad17c483eae2dc\nM: 83c361bac43f4efbe8d5e6042b03a1e449031bd5 127.0.0.1:30003\n slots:[10923-16383] (5461 slots) master\n 1 additional replica(s)\nS: 73679e76aea58456d221c4b332d2f3e2d68cd836 127.0.0.1:30005\n slots: (0 slots) slave\n replicates cafc83fe3e12be78cd9e0b56add515e5644a4849\nS: d09f6e6df0d73361d006a1ed5d084fe544627c5d 127.0.0.1:30006\n slots: (0 slots) slave\n replicates 83c361bac43f4efbe8d5e6042b03a1e449031bd5\n\033[32;1m[OK] All nodes agree about slots configuration.\n\033[0m\033[29;1m>>> Check for open slots...\n\033[0m\033[29;1m>>> Check slots coverage...\n\033[0m\033[32;1m[OK] All 16384 slots covered.\n\033[0m Debug : (0) &Tmp-String-0 := \033[29;1m>>> Performing hash slots allocation on 6 nodes...\n\033[0mMaster[0] -> Slots 0 - 5460\nMaster[1] -> Slots 5461 - 10922\nMaster[2] -> Slots 10923 - 16383\nAdding replica 127.0.0.1:30005 to 127.0.0.1:30001\nAdding replica 127.0.0.1:30006 to 127.0.0.1:30002\nAdding replica 127.0.0.1:30004 to 127.0.0.1:30003\n\033[29;1m>>> Trying to optimize slaves allocation for anti-affinity\n\033[0m\033[33;1m[WARNING] Some slaves are in the same host as their master\n\033[0mM: 970857d5c108f0b2dec0f3bed0ad17c483eae2dc 127.0.0.1:30001\n slots:[0-5460] (5461 slots) master\nM: cafc83fe3e12be78cd9e0b56add515e5644a4849 127.0.0.1:30002\n slots:[5461-10922] (5462 slots) master\nM: 83c361bac43f4efbe8d5e6042b03a1e449031bd5 127.0.0.1:30003\n slots:[10923-16383] (5461 slots) master\nS: 922088660be548c35ebae160ae886d55989bc501 127.0.0.1:30004\n replicates 970857d5c108f0b2dec0f3bed0ad17c483eae2dc\nS: 73679e76aea58456d221c4b332d2f3e2d68cd836 127.0.0.1:30005\n replicates cafc83fe3e12be78cd9e0b56add515e5644a4849\nS: d09f6e6df0d73361d006a1ed5d084fe544627c5d 127.0.0.1:30006\n replicates 83c361bac43f4efbe8d5e6042b03a1e449031bd5\nCan I set the above configuration? (type 'yes' to accept): \033[29;1m>>> Nodes configuration updated\n\033[0m\033[29;1m>>> Assign a different config epoch to each node\n\033[0m\033[29;1m>>> Sending CLUSTER MEET messages to join the cluster\n\033[0mWaiting for the cluster to join\n\n\033[29;1m>>> Performing Cluster Check (using node 127.0.0.1:30001)\n\033[0mM: 970857d5c108f0b2dec0f3bed0ad17c483eae2dc 127.0.0.1:30001\n slots:[0-5460] (5461 slots) master\n 1 additional replica(s)\nM: cafc83fe3e12be78cd9e0b56add515e5644a4849 127.0.0.1:30002\n slots:[5461-10922] (5462 slots) master\n 1 additional replica(s)\nS: 922088660be548c35ebae160ae886d55989bc501 127.0.0.1:30004\n slots: (0 slots) slave\n replicates 970857d5c108f0b2dec0f3bed0ad17c483eae2dc\nM: 83c361bac43f4efbe8d5e6042b03a1e449031bd5 127.0.0.1:30003\n slots:[10923-16383] (5461 slots) master\n 1 additional replica(s)\nS: 73679e76aea58456d221c4b332d2f3e2d68cd836 127.0.0.1:30005\n slots: (0 slots) slave\n replicates cafc83fe3e12be78cd9e0b56add515e5644a4849\nS: d09f6e6df0d73361d006a1ed5d084fe544627c5d 127.0.0.1:30006\n slots: (0 slots) slave\n replicates 83c361bac43f4efbe8d5e6042b03a1e449031bd5\n\033[32;1m[OK] All nodes agree about slots configuration.\n\033[0m\033[29;1m>>> Check for open slots...\n\033[0m\033[29;1m>>> Check slots coverage...\n\033[0m\033[32;1m[OK] All 16384 slots covered.\n\033[0m Debug : (0) &Tmp-String-0 := 127.0.0.1 Debug : (0) if (!&Tmp-String-0 || (&Tmp-String-0 == '')) { Debug : (0) | || Debug : (0) | ! Debug : (0) | %logical_or() Debug : (0) | &Tmp-String-0 Debug : (0) | %exists() Debug : (0) | --> true Debug : (0) | %unary_not({true}) Debug : (0) | --> false Debug : (0) | == Debug : (0) | %logical_or(...) Debug : (0) | &Tmp-String-0 Debug : (0) | &Tmp-String-0 Debug : (0) | --> 127.0.0.1 Debug : (0) | %cmp_eq({127.0.0.1}{}) Debug : (0) | --> false Debug : (0) | %logical_or(...) Debug : (0) | --> (null) Debug : (0) ... Debug : (0) } Debug : (0) foreach &control.Tmp-Integer-0 { Debug : (0) if (%redis.remap(%{Tmp-String-0}:30001) == 'success') { Debug : (0) | == Debug : (0) | %redis.remap(%{Tmp-String-0}:30001) Debug : (0) | %{%redis.remap(%{Tmp-String-0}:30001)} Debug : (0) | redis.remap Debug : (0) | Tmp-String-0 Debug : (0) | %{Tmp-String-0} Debug : (0) | --> 127.0.0.1 Debug : (0) Reserved connection (0) Info : (0) Initiating cluster remap Info : (0) Deleting connection (0) Debug : (0) | %redis.remap({127.0.0.1, :30001}) Debug : (0) | --> no-connection Debug : (0) | %cmp_eq({no-connection}{success}) Debug : (0) | --> false Debug : (0) ... Debug : (0) } Debug : (0) | delay Debug : (0) Delaying request by ~0.5s Debug : (0) | %delay({0.5}) Debug : (0) Delay done Debug : (0) xlat - Resuming execution Debug : (0) | %delay(...) Debug : (0) | --> 0.500643425 Debug : (0) if ("%{Foreach-Variable-0}" == 20) { Debug : (0) | == Debug : (0) | cast Debug : (0) | %{Foreach-Variable-0} Debug : (0) | %{%{Foreach-Variable-0}} Debug : (0) | Foreach-Variable-0 Debug : (0) | %{Foreach-Variable-0} Debug : (0) | --> 0 Debug : (0) | %cast({string}{0}) Debug : (0) | --> 0 Debug : (0) | %cmp_eq({0}{20}) Debug : (0) | --> false Debug : (0) ... Debug : (0) } Debug : (0) # looping with: Foreach-Variable-0 = 1 Debug : (0) if (%redis.remap(%{Tmp-String-0}:30001) == 'success') { Debug : (0) | == Debug : (0) | %redis.remap(%{Tmp-String-0}:30001) Debug : (0) | %{%redis.remap(%{Tmp-String-0}:30001)} Debug : (0) | redis.remap Debug : (0) | Tmp-String-0 Debug : (0) | %{Tmp-String-0} Debug : (0) | --> 127.0.0.1 Debug : (0) 0 of 0 connections in use. You may need to increase "spare" Debug : (0) Opening additional connection (1), 1 of 12 pending slots used Debug : rlm_redis (redis) - [1] Connecting to node 127.0.0.1:30001 Debug : (0) Reserved connection (1) Info : (0) Initiating cluster remap Info : (0) Cluster map consists of 3 key ranges Info : (0) 0 - keys 5461-10922 Info : (0) master: 127.0.0.1:30002 Info : (0) slave0: 127.0.0.1:30005 Info : (0) 1 - keys 10923-16383 Info : (0) master: 127.0.0.1:30003 Info : (0) slave0: 127.0.0.1:30006 Info : (0) 2 - keys 0-5460 Info : (0) master: 127.0.0.1:30001 Info : (0) slave0: 127.0.0.1:30004 Debug : rlm_redis (redis) [2] - Initialising connection pool Debug : pool { Debug : start = 0 Debug : min = 0 Debug : max = 12 Debug : max_pending = 0 Debug : spare = 0 Debug : uses = 0 Debug : lifetime = 86400 Debug : cleanup_interval = 300 Debug : idle_timeout = 600 Debug : connect_timeout = 3.0 Debug : held_trigger_min = 0.0 Debug : held_trigger_max = 0.5 Debug : retry_delay = 0 Debug : spread = no Debug : } Debug : rlm_redis (redis) [3] - Initialising connection pool Debug : pool { Debug : start = 0 Debug : min = 0 Debug : max = 12 Debug : max_pending = 0 Debug : spare = 0 Debug : uses = 0 Debug : lifetime = 86400 Debug : cleanup_interval = 300 Debug : idle_timeout = 600 Debug : connect_timeout = 3.0 Debug : held_trigger_min = 0.0 Debug : held_trigger_max = 0.5 Debug : retry_delay = 0 Debug : spread = no Debug : } Debug : rlm_redis (redis) [4] - Initialising connection pool Debug : pool { Debug : start = 0 Debug : min = 0 Debug : max = 12 Debug : max_pending = 0 Debug : spare = 0 Debug : uses = 0 Debug : lifetime = 86400 Debug : cleanup_interval = 300 Debug : idle_timeout = 600 Debug : connect_timeout = 3.0 Debug : held_trigger_min = 0.0 Debug : held_trigger_max = 0.5 Debug : retry_delay = 0 Debug : spread = no Debug : } Debug : rlm_redis (redis) [5] - Initialising connection pool Debug : pool { Debug : start = 0 Debug : min = 0 Debug : max = 12 Debug : max_pending = 0 Debug : spare = 0 Debug : uses = 0 Debug : lifetime = 86400 Debug : cleanup_interval = 300 Debug : idle_timeout = 600 Debug : connect_timeout = 3.0 Debug : held_trigger_min = 0.0 Debug : held_trigger_max = 0.5 Debug : retry_delay = 0 Debug : spread = no Debug : } Debug : rlm_redis (redis) [6] - Initialising connection pool Debug : pool { Debug : start = 0 Debug : min = 0 Debug : max = 12 Debug : max_pending = 0 Debug : spare = 0 Debug : uses = 0 Debug : lifetime = 86400 Debug : cleanup_interval = 300 Debug : idle_timeout = 600 Debug : connect_timeout = 3.0 Debug : held_trigger_min = 0.0 Debug : held_trigger_max = 0.5 Debug : retry_delay = 0 Debug : spread = no Debug : } Debug : (0) Released connection (1) Debug : (0) | %redis.remap({127.0.0.1, :30001}) Debug : (0) | --> success Debug : (0) | %cmp_eq({success}{success}) Debug : (0) | --> true Debug : (0) if ((%redis('SET','b',"%{control.Tmp-String-0}") == 'OK') && (%redis('SET','c',"%{control.Tmp-String-1}") == 'OK') && (%redis('SET','d',"%{control.Tmp-String-2}") == 'OK')) { Debug : (0) | && Debug : (0) | == Debug : (0) | %logical_and() Debug : (0) | %redis('SET','b',"%{control.Tmp-String-0}") Debug : (0) | %{%redis('SET','b',"%{control.Tmp-String-0}")} Debug : (0) | redis Debug : (0) | control.Tmp-String-0 Debug : (0) | %{control.Tmp-String-0} Debug : (0) | --> 1-ipsKGrCH Debug : (0) REDIS command arguments Debug : (0) Key "b" -> slot 3300 Debug : (0) Reserved connection (1) Debug : (0) [1] >>> Sending command(s) to 127.0.0.1:30001 Debug : (0) Executing command: SET Debug : (0) With arguments Debug : (0) [1] b Debug : (0) [2] 1-ipsKGrCH ERROR : (0) ERROR: (0) error : CLUSTERDOWN The cluster is down Debug : (0) [1] <<< Returned: error ERROR : (0) ERROR: [1] Command failed: Server error: CLUSTERDOWN The cluster is down Debug : (0) Released connection (1) Debug : (0) | %redis({SET}{b}{1-ipsKGrCH}) Debug : (0) | %cmp_eq({}{OK}) Debug : (0) | --> false Debug : (0) | %logical_and(...) Debug : (0) ... Debug : (0) } Debug : (0) } # if (%redis.remap(%{Tmp-String-0}:30001) == 'success') (noop) Debug : (0) &request -= &Module-Failure-Message[*] Debug : (0) | delay Debug : (0) Delaying request by ~0.5s Debug : (0) | %delay({0.5}) Debug : (0) Delay done Debug : (0) xlat - Resuming execution Debug : (0) | %delay(...) Debug : (0) | --> 0.50059519 Debug : (0) if ("%{Foreach-Variable-0}" == 20) { Debug : (0) | == Debug : (0) | cast Debug : (0) | %{Foreach-Variable-0} Debug : (0) | %{%{Foreach-Variable-0}} Debug : (0) | Foreach-Variable-0 Debug : (0) | %{Foreach-Variable-0} Debug : (0) | --> 1 Debug : (0) | %cast({string}{1}) Debug : (0) | --> 1 Debug : (0) | %cmp_eq({1}{20}) Debug : (0) | --> false Debug : (0) ... Debug : (0) } Debug : (0) # looping with: Foreach-Variable-0 = 2 Debug : (0) if (%redis.remap(%{Tmp-String-0}:30001) == 'success') { Debug : (0) | == Debug : (0) | %redis.remap(%{Tmp-String-0}:30001) Debug : (0) | %{%redis.remap(%{Tmp-String-0}:30001)} Debug : (0) | redis.remap Debug : (0) | Tmp-String-0 Debug : (0) | %{Tmp-String-0} Debug : (0) | --> 127.0.0.1 Debug : (0) Reserved connection (1) Info : (0) Initiating cluster remap Info : (0) Cluster map consists of 3 key ranges Info : (0) 0 - keys 5461-10922 Info : (0) master: 127.0.0.1:30002 Info : (0) slave0: 127.0.0.1:30005 Info : (0) 1 - keys 10923-16383 Info : (0) master: 127.0.0.1:30003 Info : (0) slave0: 127.0.0.1:30006 Info : (0) 2 - keys 0-5460 Info : (0) master: 127.0.0.1:30001 Info : (0) slave0: 127.0.0.1:30004 Debug : (0) Released connection (1) Debug : (0) | %redis.remap({127.0.0.1, :30001}) Debug : (0) | --> success Debug : (0) | %cmp_eq({success}{success}) Debug : (0) | --> true Debug : (0) if ((%redis('SET','b',"%{control.Tmp-String-0}") == 'OK') && (%redis('SET','c',"%{control.Tmp-String-1}") == 'OK') && (%redis('SET','d',"%{control.Tmp-String-2}") == 'OK')) { Debug : (0) | && Debug : (0) | == Debug : (0) | %logical_and() Debug : (0) | %redis('SET','b',"%{control.Tmp-String-0}") Debug : (0) | %{%redis('SET','b',"%{control.Tmp-String-0}")} Debug : (0) | redis Debug : (0) | control.Tmp-String-0 Debug : (0) | %{control.Tmp-String-0} Debug : (0) | --> 1-ipsKGrCH Debug : (0) REDIS command arguments Debug : (0) Key "b" -> slot 3300 Debug : (0) Reserved connection (1) Debug : (0) [1] >>> Sending command(s) to 127.0.0.1:30001 Debug : (0) Executing command: SET Debug : (0) With arguments Debug : (0) [1] b Debug : (0) [2] 1-ipsKGrCH Debug : (0) [1] <<< Returned: success Debug : (0) Released connection (1) Debug : (0) | %redis({SET}{b}{1-ipsKGrCH}) Debug : (0) | --> OK Debug : (0) | %cmp_eq({OK}{OK}) Debug : (0) | --> true Debug : (0) | == Debug : (0) | %logical_and(...) Debug : (0) | %redis('SET','c',"%{control.Tmp-String-1}") Debug : (0) | %{%redis('SET','c',"%{control.Tmp-String-1}")} Debug : (0) | redis Debug : (0) | control.Tmp-String-1 Debug : (0) | %{control.Tmp-String-1} Debug : (0) | --> 2-SHvmVaT6 Debug : (0) REDIS command arguments Debug : (0) Key "c" -> slot 7365 Debug : (0) 0 of 0 connections in use. You may need to increase "spare" Debug : (0) Opening additional connection (0), 1 of 12 pending slots used Debug : rlm_redis (redis) - [2] Connecting to node 127.0.0.1:30002 Debug : (0) Reserved connection (0) Debug : (0) [2] >>> Sending command(s) to 127.0.0.1:30002 Debug : (0) Executing command: SET Debug : (0) With arguments Debug : (0) [1] c Debug : (0) [2] 2-SHvmVaT6 Debug : (0) [2] <<< Returned: success Debug : (0) Released connection (0) Debug : (0) | %redis({SET}{c}{2-SHvmVaT6}) Debug : (0) | --> OK Debug : (0) | %cmp_eq({OK}{OK}) Debug : (0) | --> true Debug : (0) | == Debug : (0) | %logical_and(...) Debug : (0) | %redis('SET','d',"%{control.Tmp-String-2}") Debug : (0) | %{%redis('SET','d',"%{control.Tmp-String-2}")} Debug : (0) | redis Debug : (0) | control.Tmp-String-2 Debug : (0) | %{control.Tmp-String-2} Debug : (0) | --> 3-EspKrUiX Debug : (0) REDIS command arguments Debug : (0) Key "d" -> slot 11298 Debug : (0) 0 of 0 connections in use. You may need to increase "spare" Debug : (0) Opening additional connection (0), 1 of 12 pending slots used Debug : rlm_redis (redis) - [4] Connecting to node 127.0.0.1:30003 Debug : (0) Reserved connection (0) Debug : (0) [4] >>> Sending command(s) to 127.0.0.1:30003 Debug : (0) Executing command: SET Debug : (0) With arguments Debug : (0) [1] d Debug : (0) [2] 3-EspKrUiX Debug : (0) [4] <<< Returned: success Debug : (0) Released connection (0) Debug : (0) | %redis({SET}{d}{3-EspKrUiX}) Debug : (0) | --> OK Debug : (0) | %cmp_eq({OK}{OK}) Debug : (0) | --> true Debug : (0) | %logical_and(...) Debug : (0) | --> true Debug : (0) if ((%redis(-@%redis.node('b','1'),'GET','b') == "%{control.Tmp-String-0}") && (%redis(-@%redis.node('c','1'),'GET','c') == "%{control.Tmp-String-1}") && (%redis(-@%redis.node('d','1'),'GET','d') == "%{control.Tmp-String-2}")) { Debug : (0) | && Debug : (0) | == Debug : (0) | %logical_and() Debug : (0) | %redis(-@%redis.node('b','1'),'GET','b') Debug : (0) | %{%redis(-@%redis.node('b','1'),'GET','b')} Debug : (0) | redis Debug : (0) Key "b" -> slot 3300 Debug : (0) | %redis.node({b}{1}) Debug : (0) | --> 127.0.0.1:30004 Debug : (0) 0 of 0 connections in use. You may need to increase "spare" Debug : (0) Opening additional connection (0), 1 of 12 pending slots used Debug : rlm_redis (redis) - [6] Connecting to node 127.0.0.1:30004 Debug : (0) Reserved connection (0) Debug : (0) Executing command: GET Debug : (0) With arguments Debug : (0) [1] b Debug : (0) | %redis({-@, 127.0.0.1:30004}{GET}{b}) Debug : (0) | --> NULL Debug : (0) | cast Debug : (0) | %{control.Tmp-String-0} Debug : (0) | %{%{control.Tmp-String-0}} Debug : (0) | control.Tmp-String-0 Debug : (0) | %{control.Tmp-String-0} Debug : (0) | --> 1-ipsKGrCH Debug : (0) | %cast({string}{1-ipsKGrCH}) Debug : (0) | --> 1-ipsKGrCH ASSERT FAILED src/lib/util/calc.c[2697]: dst->type == FR_TYPE_BOOL CAUGHT SIGNAL: Aborted Backtrace of last 13 frames: build/lib/local/.libs/libfreeradius-util.so(fr_fault+0xd8)[0x7f3d5435cd18] build/lib/local/.libs/libfreeradius-util.so(+0x2e81a)[0x7f3d5435c81a] build/lib/local/.libs/libfreeradius-util.so(fr_value_calc_list_cmp+0x1be)[0x7f3d5435619e] build/lib/local/.libs/libfreeradius-unlang.so(+0x7c21c)[0x7f3d5417021c] build/lib/local/.libs/libfreeradius-unlang.so(+0x7647b)[0x7f3d5416a47b] build/lib/local/.libs/libfreeradius-unlang.so(xlat_frame_eval_repeat+0x8e5)[0x7f3d541640f5] build/lib/local/.libs/libfreeradius-unlang.so(+0x45562)[0x7f3d54139562] build/lib/local/.libs/libfreeradius-unlang.so(unlang_interpret+0x8ca)[0x7f3d54123afa] build/lib/local/.libs/libfreeradius-unlang.so(unlang_interpret_synchronous+0x2d9)[0x7f3d5412b119] ./build/bin/local/unit_test_module(main+0xf4d)[0x56521ca628cd] /lib/x86_64-linux-gnu/libc.so.6(+0x29d90)[0x7f3d53703d90] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80)[0x7f3d53703e40] ./build/bin/local/unit_test_module(_start+0x25)[0x56521ca618b5] No panic action set Aborted