lots of things

changed db storing method from json to message pack
remove tui
fix progressbar
add logging
This commit is contained in:
William
2026-01-08 22:15:45 +08:00
parent 743261ce4f
commit eb9dcd15e8
23 changed files with 100 additions and 896 deletions

View File

@@ -9,7 +9,9 @@ num_cpus = "1.17.0"
lazy_static.workspace = true
color-eyre.workspace = true
serde.workspace = true
rmp-serde.workspace = true
serde_json.workspace = true
directories.workspace = true
log.workspace = true
models = { path = "../models" }

View File

@@ -107,7 +107,7 @@ impl RocksDB {
if query_res.is_none() {
return Ok(None);
}
let mut value: TColumn = serde_json::from_slice(&query_res.unwrap())?;
let mut value: TColumn = rmp_serde::from_slice(&query_res.unwrap())?;
value.set_id(id.clone());
Ok(Some(value))
}
@@ -116,7 +116,7 @@ impl RocksDB {
where TColumn: RocksColumn + Serialize
{
let cf = self.db.cf_handle(TColumn::get_column_name().as_str()).unwrap();
self.db.put_cf(&cf, serde_json::to_string(&value.get_id())?, serde_json::to_string(value)?)?;
self.db.put_cf(&cf, serde_json::to_string(&value.get_id())?, rmp_serde::to_vec(&value)?)?;
Ok(())
}
@@ -129,7 +129,7 @@ impl RocksDB {
for id in ids {
let query_res = transaction.get_cf(&cf, serde_json::to_string(id)?)?;
if let Some(res) = query_res {
let mut value: TColumn = serde_json::from_slice(&res)?;
let mut value: TColumn = rmp_serde::from_slice(&res)?;
value.set_id(id.clone());
values.push(value);
}
@@ -163,7 +163,7 @@ impl RocksDB {
.filter_map(Result::ok)
.map(|(k, v)| {
let id = serde_json::from_slice::<TColumn::Id>(&k).unwrap();
let mut value = serde_json::from_slice::<TColumn>(&v).unwrap();
let mut value = rmp_serde::from_slice::<TColumn>(&v).unwrap();
value.set_id(id);
value
})
@@ -177,7 +177,7 @@ impl RocksDB {
let transaction = self.db.transaction();
let cf = self.db.cf_handle(TColumn::get_column_name().as_str()).unwrap();
for value in values {
transaction.put_cf(&cf, serde_json::to_string(&value.get_id())?, serde_json::to_string(value)?)?;
transaction.put_cf(&cf, serde_json::to_string(&value.get_id())?, rmp_serde::to_vec(value)?)?;
}
transaction.commit()?;
Ok(())