From 17cd96e022b0257abb54cbd41f352642aef9a8aa Mon Sep 17 00:00:00 2001 From: Arthur Petukhovsky Date: Fri, 3 Mar 2023 20:33:55 +0000 Subject: [PATCH] WIP --- safekeeper/src/lib.rs | 1 + safekeeper/src/sim/disk.rs | 7 +++++++ safekeeper/src/sim/disklog.rs | 21 +++++++++++++++++++++ safekeeper/src/sim/mod.rs | 3 +++ safekeeper/src/sim/proto.rs | 0 5 files changed, 32 insertions(+) create mode 100644 safekeeper/src/sim/disk.rs create mode 100644 safekeeper/src/sim/disklog.rs create mode 100644 safekeeper/src/sim/mod.rs create mode 100644 safekeeper/src/sim/proto.rs diff --git a/safekeeper/src/lib.rs b/safekeeper/src/lib.rs index 6ab108ceb0..c8e68633d1 100644 --- a/safekeeper/src/lib.rs +++ b/safekeeper/src/lib.rs @@ -13,6 +13,7 @@ pub mod control_file_upgrade; pub mod debug_dump; pub mod handler; pub mod http; +pub mod sim; pub mod json_ctrl; pub mod metrics; pub mod receive_wal; diff --git a/safekeeper/src/sim/disk.rs b/safekeeper/src/sim/disk.rs new file mode 100644 index 0000000000..8662ce4c10 --- /dev/null +++ b/safekeeper/src/sim/disk.rs @@ -0,0 +1,7 @@ + + +pub trait Storage { + fn flush_pos(&self) -> u32; + fn flush(&mut self) -> Result<()>; + fn write(&mut self, ) +} \ No newline at end of file diff --git a/safekeeper/src/sim/disklog.rs b/safekeeper/src/sim/disklog.rs new file mode 100644 index 0000000000..159f55d54d --- /dev/null +++ b/safekeeper/src/sim/disklog.rs @@ -0,0 +1,21 @@ +use std::collections::HashMap; + +pub struct DiskLog { + pub +} + +impl KV { + pub fn new() -> Self { + Self { + map: HashMap::new(), + } + } + + pub fn get(&self, key: &str) -> u32 { + self.map.get(key).copied().unwrap_or(0) + } + + pub fn set(&mut self, key: &str, value: u32) { + self.map.insert(key.to_string(), value); + } +} \ No newline at end of file diff --git a/safekeeper/src/sim/mod.rs b/safekeeper/src/sim/mod.rs new file mode 100644 index 0000000000..cc4bc060e4 --- /dev/null +++ b/safekeeper/src/sim/mod.rs @@ -0,0 +1,3 @@ +pub mod disklog; +pub mod proto; +pub mod disk; diff --git a/safekeeper/src/sim/proto.rs b/safekeeper/src/sim/proto.rs new file mode 100644 index 0000000000..e69de29bb2