mirror of
https://github.com/deuxfleurs-org/garage.git
synced 2026-08-21 18:36:35 +00:00
Merge branch 'main' into next-0.10
This commit is contained in:
+17
-17
@@ -20,26 +20,26 @@ garage_table.workspace = true
|
||||
garage_block.workspace = true
|
||||
garage_util.workspace = true
|
||||
|
||||
async-trait = "0.1.7"
|
||||
arc-swap = "1.0"
|
||||
blake2 = "0.10"
|
||||
chrono = "0.4"
|
||||
err-derive = "0.3"
|
||||
hex = "0.4"
|
||||
base64 = "0.21"
|
||||
tracing = "0.1"
|
||||
rand = "0.8"
|
||||
zstd = { version = "0.12", default-features = false }
|
||||
async-trait.workspace = true
|
||||
arc-swap.workspace = true
|
||||
blake2.workspace = true
|
||||
chrono.workspace = true
|
||||
err-derive.workspace = true
|
||||
hex.workspace = true
|
||||
base64.workspace = true
|
||||
tracing.workspace = true
|
||||
rand.workspace = true
|
||||
zstd.workspace = true
|
||||
|
||||
serde = { version = "1.0", default-features = false, features = ["derive", "rc"] }
|
||||
serde_bytes = "0.11"
|
||||
serde.workspace = true
|
||||
serde_bytes.workspace = true
|
||||
|
||||
futures = "0.3"
|
||||
futures-util = "0.3"
|
||||
tokio = { version = "1.0", default-features = false, features = ["rt", "rt-multi-thread", "io-util", "net", "time", "macros", "sync", "signal", "fs"] }
|
||||
opentelemetry = "0.17"
|
||||
futures.workspace = true
|
||||
futures-util.workspace = true
|
||||
tokio.workspace = true
|
||||
opentelemetry.workspace = true
|
||||
|
||||
netapp = "0.10"
|
||||
netapp.workspace = true
|
||||
|
||||
[features]
|
||||
default = [ "sled", "lmdb", "sqlite" ]
|
||||
|
||||
@@ -126,7 +126,7 @@ impl<'a> BucketHelper<'a> {
|
||||
}
|
||||
|
||||
// Checks ok, add alias
|
||||
let mut bucket_p = bucket.state.as_option_mut().unwrap();
|
||||
let bucket_p = bucket.state.as_option_mut().unwrap();
|
||||
|
||||
let alias_ts = increment_logical_clock_2(
|
||||
bucket_p.aliases.get_timestamp(alias_name),
|
||||
@@ -163,7 +163,7 @@ impl<'a> BucketHelper<'a> {
|
||||
alias_name: &String,
|
||||
) -> Result<(), Error> {
|
||||
let mut bucket = self.get_existing_bucket(bucket_id).await?;
|
||||
let mut bucket_state = bucket.state.as_option_mut().unwrap();
|
||||
let bucket_state = bucket.state.as_option_mut().unwrap();
|
||||
|
||||
let mut alias = self
|
||||
.0
|
||||
@@ -245,7 +245,7 @@ impl<'a> BucketHelper<'a> {
|
||||
self.0.bucket_alias_table.insert(&alias).await?;
|
||||
}
|
||||
|
||||
if let Some(mut bucket_state) = bucket.state.as_option_mut() {
|
||||
if let Some(bucket_state) = bucket.state.as_option_mut() {
|
||||
bucket_state.aliases = LwwMap::raw_item(alias_name.clone(), alias_ts, false);
|
||||
self.0.bucket_table.insert(&bucket).await?;
|
||||
}
|
||||
@@ -274,7 +274,7 @@ impl<'a> BucketHelper<'a> {
|
||||
let mut bucket = self.get_existing_bucket(bucket_id).await?;
|
||||
let mut key = key_helper.get_existing_key(key_id).await?;
|
||||
|
||||
let mut key_param = key.state.as_option_mut().unwrap();
|
||||
let key_param = key.state.as_option_mut().unwrap();
|
||||
|
||||
if let Some(Some(existing_alias)) = key_param.local_aliases.get(alias_name) {
|
||||
if *existing_alias != bucket_id {
|
||||
@@ -283,7 +283,7 @@ impl<'a> BucketHelper<'a> {
|
||||
}
|
||||
|
||||
// Checks ok, add alias
|
||||
let mut bucket_p = bucket.state.as_option_mut().unwrap();
|
||||
let bucket_p = bucket.state.as_option_mut().unwrap();
|
||||
let bucket_p_local_alias_key = (key.key_id.clone(), alias_name.clone());
|
||||
|
||||
// Calculate the timestamp to assign to this aliasing in the two local_aliases maps
|
||||
@@ -326,7 +326,7 @@ impl<'a> BucketHelper<'a> {
|
||||
let mut bucket = self.get_existing_bucket(bucket_id).await?;
|
||||
let mut key = key_helper.get_existing_key(key_id).await?;
|
||||
|
||||
let mut bucket_p = bucket.state.as_option_mut().unwrap();
|
||||
let bucket_p = bucket.state.as_option_mut().unwrap();
|
||||
|
||||
if key
|
||||
.state
|
||||
@@ -359,7 +359,7 @@ impl<'a> BucketHelper<'a> {
|
||||
}
|
||||
|
||||
// Checks ok, remove alias
|
||||
let mut key_param = key.state.as_option_mut().unwrap();
|
||||
let key_param = key.state.as_option_mut().unwrap();
|
||||
let bucket_p_local_alias_key = (key.key_id.clone(), alias_name.clone());
|
||||
|
||||
let alias_ts = increment_logical_clock_2(
|
||||
|
||||
@@ -232,7 +232,7 @@ impl<T: CountedItem> IndexCounter<T> {
|
||||
|
||||
let now = now_msec();
|
||||
for (s, inc) in counts.iter() {
|
||||
let mut ent = entry.values.entry(s.to_string()).or_insert((0, 0));
|
||||
let ent = entry.values.entry(s.to_string()).or_insert((0, 0));
|
||||
ent.0 = std::cmp::max(ent.0 + 1, now);
|
||||
ent.1 += *inc;
|
||||
}
|
||||
@@ -348,7 +348,7 @@ impl<T: CountedItem> IndexCounter<T> {
|
||||
},
|
||||
};
|
||||
for (s, v) in counts.iter() {
|
||||
let mut tv = local_counter.values.entry(s.to_string()).or_insert((0, 0));
|
||||
let tv = local_counter.values.entry(s.to_string()).or_insert((0, 0));
|
||||
tv.0 = std::cmp::max(tv.0 + 1, now);
|
||||
tv.1 += v;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user