This commit is contained in:
dbr 2021-04-22 14:15:50 +10:00
parent a9b93e7c20
commit 11d0172bf8
2 changed files with 8 additions and 9 deletions

View file

@ -12,8 +12,8 @@ use uuid::Uuid;
mod config; mod config;
mod inmemory; mod inmemory;
mod kv; mod kv;
mod sqlite;
mod operation; mod operation;
mod sqlite;
pub use self::kv::KvStorage; pub use self::kv::KvStorage;
pub use config::StorageConfig; pub use config::StorageConfig;

View file

@ -1,7 +1,7 @@
use crate::storage::{Operation, Storage, StorageTxn, TaskMap, VersionId, DEFAULT_BASE_VERSION}; use crate::storage::{Operation, Storage, StorageTxn, TaskMap, VersionId, DEFAULT_BASE_VERSION};
use crate::utils::Key; use crate::utils::Key;
use anyhow::Context; use anyhow::Context;
use rusqlite::{Connection, OptionalExtension, params}; use rusqlite::{params, Connection, OptionalExtension};
use serde::serde_if_integer128; use serde::serde_if_integer128;
use std::path::Path; use std::path::Path;
use uuid::Uuid; use uuid::Uuid;
@ -111,13 +111,12 @@ impl<'t> StorageTxn for Txn<'t> {
fn all_tasks(&mut self) -> anyhow::Result<Vec<(Uuid, TaskMap)>> { fn all_tasks(&mut self) -> anyhow::Result<Vec<(Uuid, TaskMap)>> {
let t = self.get_txn()?; let t = self.get_txn()?;
let mut q = t.prepare("SELECT uuid, data FROM tasks")?; let mut q = t.prepare("SELECT uuid, data FROM tasks")?;
let rows = q let rows = q.query_map([], |r| {
.query_map([], |r| { let uuid: Uuid = r.get("uuid")?;
let uuid: Uuid = r.get("uuid")?; let data_str: String = r.get("data")?;
let data_str: String = r.get("data")?; let data: TaskMap = serde_json::from_str(&data_str).unwrap(); // FIXME: Remove unwrap
let data = serde_json::from_str(&data_str).unwrap(); // FIXME: Remove unwrap Ok((uuid, data))
Ok((uuid, data)) })?;
})?;
let mut ret = vec![]; let mut ret = vec![];
for r in rows { for r in rows {
ret.push(r?); ret.push(r?);