mirror of
https://github.com/deuxfleurs-org/garage.git
synced 2026-08-20 18:12:15 +00:00
Make it explicit when using nonversioned encoding
This commit is contained in:
@@ -28,7 +28,6 @@ hexdump = "0.1"
|
||||
tracing = "0.1.30"
|
||||
rand = "0.8"
|
||||
|
||||
rmp-serde = "0.15"
|
||||
serde = { version = "1.0", default-features = false, features = ["derive", "rc"] }
|
||||
serde_bytes = "0.11"
|
||||
|
||||
|
||||
+4
-3
@@ -10,6 +10,7 @@ use garage_db as db;
|
||||
|
||||
use garage_util::background::*;
|
||||
use garage_util::data::*;
|
||||
use garage_util::encode::{nonversioned_decode, nonversioned_encode};
|
||||
use garage_util::error::Error;
|
||||
|
||||
use garage_rpc::ring::*;
|
||||
@@ -67,7 +68,7 @@ pub enum MerkleNode {
|
||||
|
||||
impl<F: TableSchema, R: TableReplication> MerkleUpdater<F, R> {
|
||||
pub(crate) fn new(data: Arc<TableData<F, R>>) -> Arc<Self> {
|
||||
let empty_node_hash = blake2sum(&rmp_to_vec_all_named(&MerkleNode::Empty).unwrap()[..]);
|
||||
let empty_node_hash = blake2sum(&nonversioned_encode(&MerkleNode::Empty).unwrap()[..]);
|
||||
|
||||
Arc::new(Self {
|
||||
data,
|
||||
@@ -273,7 +274,7 @@ impl<F: TableSchema, R: TableReplication> MerkleUpdater<F, R> {
|
||||
tx.remove(&self.data.merkle_tree, k.encode())?;
|
||||
Ok(self.empty_node_hash)
|
||||
} else {
|
||||
let vby = rmp_to_vec_all_named(v).map_err(|e| db::TxError::Abort(e.into()))?;
|
||||
let vby = nonversioned_encode(v).map_err(|e| db::TxError::Abort(e.into()))?;
|
||||
let rethash = blake2sum(&vby[..]);
|
||||
tx.insert(&self.data.merkle_tree, k.encode(), vby)?;
|
||||
Ok(rethash)
|
||||
@@ -364,7 +365,7 @@ impl MerkleNode {
|
||||
fn decode_opt(ent: &Option<db::Value>) -> Result<Self, Error> {
|
||||
match ent {
|
||||
None => Ok(MerkleNode::Empty),
|
||||
Some(v) => Ok(rmp_serde::decode::from_read_ref::<_, MerkleNode>(&v[..])?),
|
||||
Some(v) => Ok(nonversioned_decode::<MerkleNode>(&v[..])?),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+2
-1
@@ -14,6 +14,7 @@ use tokio::sync::{mpsc, watch};
|
||||
|
||||
use garage_util::background::*;
|
||||
use garage_util::data::*;
|
||||
use garage_util::encode::nonversioned_encode;
|
||||
use garage_util::error::{Error, OkOrMessage};
|
||||
|
||||
use garage_rpc::ring::*;
|
||||
@@ -615,7 +616,7 @@ impl<F: TableSchema, R: TableReplication> Worker for SyncWorker<F, R> {
|
||||
// ---- UTIL ----
|
||||
|
||||
fn hash_of_merkle_node(x: &MerkleNode) -> Result<Hash, Error> {
|
||||
Ok(blake2sum(&rmp_to_vec_all_named(x)?[..]))
|
||||
Ok(blake2sum(&nonversioned_encode(x)?[..]))
|
||||
}
|
||||
|
||||
fn join_ordered<'a, K: Ord + Eq, V1, V2>(
|
||||
|
||||
Reference in New Issue
Block a user