Compare commits

..

1 commit

Author SHA1 Message Date
d067cfef22 implement repair procedure to fix inconsistent bucket aliases
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/deployment/release/4 Pipeline was successful
ci/woodpecker/deployment/release/3 Pipeline was successful
ci/woodpecker/deployment/debug Pipeline was successful
ci/woodpecker/deployment/release/1 Pipeline was successful
ci/woodpecker/deployment/release/2 Pipeline was successful
ci/woodpecker/deployment/publish Pipeline was successful
2025-03-19 13:16:33 +01:00

View file

@ -547,13 +547,13 @@ impl<'a> LockedHelper<'a> {
for (name, _, to) in p.local_aliases.items().to_vec() { for (name, _, to) in p.local_aliases.items().to_vec() {
if let Some(id) = to { if let Some(id) = to {
if all_buckets.contains(&id) { if all_buckets.contains(&id) {
local_aliases.insert((key.key_id.clone(), name.clone()), id); local_aliases.insert((key.key_id.clone(), name), id);
} else { } else {
warn!( warn!(
"local alias: remove ({}, {}) -> {:?} (bucket is deleted)", "local alias: remove ({}, {}) -> {:?} (bucket is deleted)",
key.key_id, name, id key.key_id, name, id
); );
p.local_aliases.update_in_place(name.clone(), None); p.local_aliases.update_in_place(name, None);
has_changes = true; has_changes = true;
} }
} }
@ -607,10 +607,10 @@ impl<'a> LockedHelper<'a> {
param.aliases.update_in_place(name, false); param.aliases.update_in_place(name, false);
} }
} }
for name in ga.iter() { for name in ga {
if param.aliases.get(&name).copied().unwrap_or(false) == false { if param.aliases.get(&name).copied().unwrap_or(false) == false {
warn!("bucket {:?}: add global alias {}", bucket.id, name); warn!("bucket {:?}: add global alias {}", bucket.id, name);
param.aliases.update_in_place(name.to_string(), true); param.aliases.update_in_place(name, true);
} }
} }
} }
@ -624,10 +624,10 @@ impl<'a> LockedHelper<'a> {
param.local_aliases.update_in_place(pair, false); param.local_aliases.update_in_place(pair, false);
} }
} }
for pair in la.iter() { for pair in la {
if param.local_aliases.get(&pair).copied().unwrap_or(false) == false { if param.local_aliases.get(&pair).copied().unwrap_or(false) == false {
warn!("bucket {:?}: add local alias {:?}", bucket.id, pair); warn!("bucket {:?}: add local alias {:?}", bucket.id, pair);
param.local_aliases.update_in_place(pair.clone(), true); param.local_aliases.update_in_place(pair, true);
} }
} }
} }