From 58132d399b66988b36323de86858d56f7342d2ea Mon Sep 17 00:00:00 2001 From: Connor1996 Date: Mon, 18 Sep 2023 17:58:45 +0800 Subject: [PATCH] clean Signed-off-by: Connor1996 --- src/engine.rs | 47 +-------------------------------------- src/env/hedged/mod.rs | 1 - src/env/mod.rs | 2 +- src/file_pipe_log/pipe.rs | 5 ----- src/purge.rs | 6 ----- 5 files changed, 2 insertions(+), 59 deletions(-) diff --git a/src/engine.rs b/src/engine.rs index cccbf9b4..dab1b5b4 100644 --- a/src/engine.rs +++ b/src/engine.rs @@ -10,6 +10,7 @@ use std::time::{Duration, Instant}; use log::{error, info}; use protobuf::{parse_from_bytes, Message}; +use crate::config::{Config, RecoveryMode}; use crate::consistency::ConsistencyChecker; use crate::env::{DefaultFileSystem, FileSystem}; use crate::event_listener::EventListener; @@ -21,40 +22,12 @@ use crate::metrics::*; use crate::pipe_log::{FileBlockHandle, FileId, LogQueue, PipeLog}; use crate::purge::{PurgeHook, PurgeManager}; use crate::write_barrier::{WriteBarrier, Writer}; -use crate::{ - config::{Config, RecoveryMode}, - env::HedgedFileSystem, -}; use crate::{perf_context, Error, GlobalStats, Result}; const METRICS_FLUSH_INTERVAL: Duration = Duration::from_secs(30); /// Max times for `write`. const MAX_WRITE_ATTEMPT: u64 = 2; -// pub struct HedgedEngine> -// where -// F: FileSystem, -// P: PipeLog, -// { -// inner: Engine, P>, -// fs: Arc>, -// } - -// impl HedgedEngine> -// where -// F: FileSystem, -// { - -// } - -// impl Deref for HedgedEngine> { -// type Target = Engine>; - -// fn deref(&self) -> &Self::Target { -// &self.inner -// } -// } - pub struct Engine> where F: FileSystem, @@ -90,24 +63,6 @@ impl Engine> { } } -pub fn open_with_hedged_file_system( - cfg: Config, - file_system: Arc, -) -> Result>> { - let file_system = if let Some(ref sec_dir) = cfg.second_dir { - let fs = Arc::new(HedgedFileSystem::new( - file_system, - cfg.dir.clone().into(), - sec_dir.clone().into(), - )); - fs.bootstrap()?; - fs - } else { - panic!() - }; - Engine::open_with(cfg, file_system, vec![]) -} - impl Engine> where F: FileSystem, diff --git a/src/env/hedged/mod.rs b/src/env/hedged/mod.rs index f0f8f6d8..c2821b27 100644 --- a/src/env/hedged/mod.rs +++ b/src/env/hedged/mod.rs @@ -97,7 +97,6 @@ pub use sender::State; /// 2. Raft log is read-only once it's sealed. /// Here is the TLA+ proof https://github.com/pingcap/tla-plus/pull/41 -// TODO: add metrics // TODO: handle specially on config change(upgrade and downgrade) // TODO: fallback to one disk, if the other disk is down for a long time and // close to full diff --git a/src/env/mod.rs b/src/env/mod.rs index 4916c6f2..43650ff2 100644 --- a/src/env/mod.rs +++ b/src/env/mod.rs @@ -21,7 +21,7 @@ pub enum Permission { } /// FileSystem -pub trait FileSystem: Send + Sync + 'static { +pub trait FileSystem: Send + Sync { type Handle: Send + Sync + Handle; type Reader: Seek + Read + Send; type Writer: Seek + Write + Send + WriteExt; diff --git a/src/file_pipe_log/pipe.rs b/src/file_pipe_log/pipe.rs index f4eb2260..5a5916ea 100644 --- a/src/file_pipe_log/pipe.rs +++ b/src/file_pipe_log/pipe.rs @@ -513,11 +513,6 @@ impl PipeLog for DualPipes { queue: LogQueue, bytes: &mut T, ) -> Result { - // if self.file_system.need_recover() { - // self.pipes[LogQueue::Append].rotate(); - // self.pipes[LogQueue::Rewrite].rotate(); - // self.file_system.trigger_recover(); - // } self.pipes[queue as usize].append(bytes) } diff --git a/src/purge.rs b/src/purge.rs index c7f889fc..cb76f776 100644 --- a/src/purge.rs +++ b/src/purge.rs @@ -75,12 +75,6 @@ where pub fn purge_expired_files(&self) -> Result> { let _t = StopWatch::new(&*ENGINE_PURGE_DURATION_HISTOGRAM); - // Purge would delete files, whereas the files may be copied by recovery - // process, so do not purge when recovering. - // if self.file_system().is_in_recover() { - // info!("skip purge due to in recover"); - // return Ok(vec![]); - // } let guard = self.force_rewrite_candidates.try_lock(); if guard.is_none() { warn!("Unable to purge expired files: locked");