mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
MM-31993: Add flag to disable gossip compression (#16701)
* MM-31993: Add flag to disable gossip compression Load tests have shown that our workload is not very suitable to LZW compression. And in fact, compressing leads to more network bandwidth than less. So we are spending more CPU cycles, and creating more traffic, leading to a lose-lose situation. We add a flag to control this behavior. Ideally, this should not be a flag in the first place, since there is never a need to enable this because clearly there is no benefit. But to keep our community servers working, we need to be able to configure this. https://mattermost.atlassian.net/browse/MM-31993 ```release-notes Add a flag to disable compression in the Gossip protocol. By default the value of the flag is false, which is not the existing default. Therefore, this will cause incompatibility issues during upgrade where servers of different versions are part of the same cluster. It is recommended to completely shutdown a cluster, and then do an upgrade. ``` * flip flag to true * Trigger CI Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
This commit is contained in:
@@ -814,6 +814,7 @@ type ClusterSettings struct {
|
||||
AdvertiseAddress *string `access:"environment,write_restrictable,cloud_restrictable"`
|
||||
UseIpAddress *bool `access:"environment,write_restrictable,cloud_restrictable"`
|
||||
UseExperimentalGossip *bool `access:"environment,write_restrictable,cloud_restrictable"`
|
||||
EnableGossipCompression *bool `access:"environment,write_restrictable,cloud_restrictable"`
|
||||
EnableExperimentalGossipEncryption *bool `access:"environment,write_restrictable,cloud_restrictable"`
|
||||
ReadOnlyConfig *bool `access:"environment,write_restrictable,cloud_restrictable"`
|
||||
GossipPort *int `access:"environment,write_restrictable,cloud_restrictable"`
|
||||
@@ -860,6 +861,10 @@ func (s *ClusterSettings) SetDefaults() {
|
||||
s.EnableExperimentalGossipEncryption = NewBool(false)
|
||||
}
|
||||
|
||||
if s.EnableGossipCompression == nil {
|
||||
s.EnableGossipCompression = NewBool(true)
|
||||
}
|
||||
|
||||
if s.ReadOnlyConfig == nil {
|
||||
s.ReadOnlyConfig = NewBool(true)
|
||||
}
|
||||
|
||||
@@ -688,6 +688,7 @@ func (ts *TelemetryService) trackConfig() {
|
||||
"use_ip_address": *cfg.ClusterSettings.UseIpAddress,
|
||||
"use_experimental_gossip": *cfg.ClusterSettings.UseExperimentalGossip,
|
||||
"enable_experimental_gossip_encryption": *cfg.ClusterSettings.EnableExperimentalGossipEncryption,
|
||||
"enable_gossip_compression": *cfg.ClusterSettings.EnableGossipCompression,
|
||||
"read_only_config": *cfg.ClusterSettings.ReadOnlyConfig,
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user