mirror of
https://git.deuxfleurs.fr/Deuxfleurs/garage.git
synced 2024-11-25 01:21:01 +00:00
Fix reconciliation logic
This commit is contained in:
parent
e9fd265ce6
commit
2dc9a48022
2 changed files with 6 additions and 5 deletions
|
@ -75,7 +75,7 @@ impl Entry<EmptyKey, String> for Bucket {
|
|||
}
|
||||
|
||||
fn merge(&mut self, other: &Self) {
|
||||
if other.timestamp < self.timestamp {
|
||||
if other.timestamp > self.timestamp {
|
||||
*self = other.clone();
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -104,6 +104,11 @@ impl Entry<EmptyKey, String> for Key {
|
|||
}
|
||||
|
||||
fn merge(&mut self, other: &Self) {
|
||||
if other.name_timestamp > self.name_timestamp {
|
||||
self.name_timestamp = other.name_timestamp;
|
||||
self.name = other.name.clone();
|
||||
}
|
||||
|
||||
if other.deleted {
|
||||
self.deleted = true;
|
||||
}
|
||||
|
@ -111,10 +116,6 @@ impl Entry<EmptyKey, String> for Key {
|
|||
self.authorized_buckets.clear();
|
||||
return;
|
||||
}
|
||||
if other.name_timestamp > self.name_timestamp {
|
||||
self.name_timestamp = other.name_timestamp;
|
||||
self.name = other.name.clone();
|
||||
}
|
||||
|
||||
for ab in other.authorized_buckets.iter() {
|
||||
match self
|
||||
|
|
Loading…
Reference in a new issue