diff options
author | Alex <alex@adnab.me> | 2024-03-28 12:40:27 +0000 |
---|---|---|
committer | Alex <alex@adnab.me> | 2024-03-28 12:40:27 +0000 |
commit | ecf641d88c264f7278d13a6d988288feb24a5dfe (patch) | |
tree | 5cd60dfa4f0d6d32a66d2e32d7912c9e289067c8 /src/util/config.rs | |
parent | 75cd14926d8dec8c36289197822df78391686c6a (diff) | |
parent | 85f580cbde4913fe8382316ff3c27b8443c61dd7 (diff) | |
download | garage-ecf641d88c264f7278d13a6d988288feb24a5dfe.tar.gz garage-ecf641d88c264f7278d13a6d988288feb24a5dfe.zip |
Merge pull request 'Fix unbounded buffering when one node has slower network' (#792) from fix-buffering into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/792
Diffstat (limited to 'src/util/config.rs')
-rw-r--r-- | src/util/config.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/util/config.rs b/src/util/config.rs index 8ecbdfbb..5372a1ec 100644 --- a/src/util/config.rs +++ b/src/util/config.rs @@ -52,6 +52,14 @@ pub struct Config { )] pub compression_level: Option<i32>, + /// Maximum amount of block data to buffer in RAM for sending to + /// remote nodes when these nodes are on slower links + #[serde( + deserialize_with = "deserialize_capacity", + default = "default_block_ram_buffer_max" + )] + pub block_ram_buffer_max: usize, + /// Skip the permission check of secret files. Useful when /// POSIX ACLs (or more complex chmods) are used. #[serde(default)] @@ -255,6 +263,9 @@ fn default_sled_flush_every_ms() -> u64 { fn default_block_size() -> usize { 1048576 } +fn default_block_ram_buffer_max() -> usize { + 256 * 1024 * 1024 +} fn default_compression() -> Option<i32> { Some(1) |