Index: openacs-4/packages/acs-tcl/tcl/server-cluster-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/tcl/server-cluster-procs.tcl,v diff -u -r1.10.2.7 -r1.10.2.8 --- openacs-4/packages/acs-tcl/tcl/server-cluster-procs.tcl 7 Feb 2023 17:50:32 -0000 1.10.2.7 +++ openacs-4/packages/acs-tcl/tcl/server-cluster-procs.tcl 11 Jul 2024 05:19:05 -0000 1.10.2.8 @@ -32,8 +32,11 @@ # have a canonical server, which is not a worker node, so it would # not need to receive all the cache-flush operations. # + set canonicalServer [acs::cluster eval { + :preferred_location [:qualified_location [parameter::get -package_id $::acs::kernel_id -parameter CanonicalServer]] + }] set nodes [lsort -unique [concat \ - [parameter::get -package_id $::acs::kernel_id -parameter CanonicalServer] \ + $canonicalServer \ [parameter::get -package_id $::acs::kernel_id -parameter ClusterPeerIP] \ [parameter::get -package_id $::acs::kernel_id -parameter DynamicClusterPeers] ]] @@ -51,8 +54,11 @@ @return boolean value } { - - return [::acs::cluster current_server_is_canonical_server] + if {[server_cluster_enabled_p]} { + return [::acs::cluster current_server_is_canonical_server] + } else { + error "ad_canonical_server_p is called, but the cluster is not enabled" + } } # Local variables: