@@ -20,7 +20,7 @@ use crate::manifest::ManifestRecord;
|
|||||||
use crate::table::{SsTable, SsTableBuilder, SsTableIterator};
|
use crate::table::{SsTable, SsTableBuilder, SsTableIterator};
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize)]
|
#[derive(Debug, Serialize, Deserialize)]
|
||||||
pub(crate) enum CompactionTask {
|
pub enum CompactionTask {
|
||||||
Leveled(LeveledCompactionTask),
|
Leveled(LeveledCompactionTask),
|
||||||
Tiered(TieredCompactionTask),
|
Tiered(TieredCompactionTask),
|
||||||
Simple(SimpleLeveledCompactionTask),
|
Simple(SimpleLeveledCompactionTask),
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
use std::collections::{BTreeSet, HashMap, HashSet};
|
use std::collections::{BTreeSet, HashMap};
|
||||||
use std::fs::File;
|
use std::fs::File;
|
||||||
use std::ops::Bound;
|
use std::ops::Bound;
|
||||||
use std::path::{Path, PathBuf};
|
use std::path::{Path, PathBuf};
|
||||||
@@ -20,7 +20,7 @@ use crate::iterators::StorageIterator;
|
|||||||
use crate::lsm_iterator::{FusedIterator, LsmIterator};
|
use crate::lsm_iterator::{FusedIterator, LsmIterator};
|
||||||
use crate::manifest::{Manifest, ManifestRecord};
|
use crate::manifest::{Manifest, ManifestRecord};
|
||||||
use crate::mem_table::{map_bound, MemTable};
|
use crate::mem_table::{map_bound, MemTable};
|
||||||
use crate::table::{self, FileObject, SsTable, SsTableBuilder, SsTableIterator};
|
use crate::table::{FileObject, SsTable, SsTableBuilder, SsTableIterator};
|
||||||
|
|
||||||
pub type BlockCache = moka::sync::Cache<(usize, usize), Arc<Block>>;
|
pub type BlockCache = moka::sync::Cache<(usize, usize), Arc<Block>>;
|
||||||
|
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ impl Manifest {
|
|||||||
pub fn add_record_when_init(&self, record: ManifestRecord) -> Result<()> {
|
pub fn add_record_when_init(&self, record: ManifestRecord) -> Result<()> {
|
||||||
let mut file = self.file.lock();
|
let mut file = self.file.lock();
|
||||||
let buf = serde_json::to_vec(&record)?;
|
let buf = serde_json::to_vec(&record)?;
|
||||||
file.write(&buf)?;
|
file.write_all(&buf)?;
|
||||||
file.sync_all()?;
|
file.sync_all()?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
use std::ops::Bound;
|
use std::ops::Bound;
|
||||||
use std::path::Path;
|
use std::path::Path;
|
||||||
use std::sync::atomic::AtomicBool;
|
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
use anyhow::Result;
|
use anyhow::Result;
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ impl Wal {
|
|||||||
buf.put_slice(key);
|
buf.put_slice(key);
|
||||||
buf.put_u16(value.len() as u16);
|
buf.put_u16(value.len() as u16);
|
||||||
buf.put_slice(value);
|
buf.put_slice(value);
|
||||||
file.write(&buf)?;
|
file.write_all(&buf)?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user