From f0a778774b07b8da15ebe3c4f37c73e50c844caa Mon Sep 17 00:00:00 2001 From: Alex Chi Z Date: Sun, 14 Apr 2024 16:42:15 +0300 Subject: [PATCH] further split keyspace Signed-off-by: Alex Chi Z --- pageserver/src/pgdatadir_mapping.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pageserver/src/pgdatadir_mapping.rs b/pageserver/src/pgdatadir_mapping.rs index b0635cf5c6..a0d65e4430 100644 --- a/pageserver/src/pgdatadir_mapping.rs +++ b/pageserver/src/pgdatadir_mapping.rs @@ -878,12 +878,15 @@ fn hash_to_raw_key(prefix: u16, data: &[u8]) -> [u8; RAW_KEY_SIZE] { } pub fn encode_aux_file_key(path: &str) -> anyhow::Result { - if let Some(fname) = split_prefix(path, "pg_logical/") { + if let Some(fname) = split_prefix(path, "pg_logical/mappings/") { let key = hash_to_raw_key(0x0101, fname.as_bytes()); Ok(Key::from_raw_key_fixed(&key)) } else if let Some(fname) = split_prefix(path, "pg_replslot/") { let key = hash_to_raw_key(0x0102, fname.as_bytes()); Ok(Key::from_raw_key_fixed(&key)) + } else if let Some(fname) = split_prefix(path, "pg_logical/snapshots/") { + let key = hash_to_raw_key(0x0103, fname.as_bytes()); + Ok(Key::from_raw_key_fixed(&key)) } else { let key = hash_to_raw_key(0x01FF, path.as_bytes()); warn!(