[TieredStorage] Remove the general-purposed TieredStorageWriter (#196)

#### Problem
tiered_storage/writer.rs was added when we planned to support multiple
tiers in the tiered-storage (i.e., at least hot and cold).  However, as we
changed our plan to handle cold accounts as state-compressed accounts,
we don't need a general purposed tiered-storage writer at this moment.


#### Summary of Changes
Remove tiered_storage/writer.rs as we currently don't have plans to develop cold storage.

#### Test Plan
Existing tiered-storage tests.
This commit is contained in:
Yueh-Hsuan Chiang 2024-03-13 10:26:37 -07:00 committed by GitHub
parent e13fbeb198
commit 69b6d5a376
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 0 additions and 64 deletions

View File

@ -11,7 +11,6 @@ pub mod mmap_utils;
pub mod owners;
pub mod readable;
mod test_utils;
pub mod writer;
use {
crate::{

View File

@ -1,63 +0,0 @@
//! docs/src/proposals/append-vec-storage.md
use {
crate::{
account_storage::meta::{StorableAccountsWithHashesAndWriteVersions, StoredAccountInfo},
accounts_hash::AccountHash,
storable_accounts::StorableAccounts,
tiered_storage::{
error::TieredStorageError, file::TieredStorageFile, footer::TieredStorageFooter,
TieredStorageFormat, TieredStorageResult,
},
},
solana_sdk::account::ReadableAccount,
std::{borrow::Borrow, path::Path},
};
#[derive(Debug)]
pub struct TieredStorageWriter<'format> {
storage: TieredStorageFile,
format: &'format TieredStorageFormat,
}
impl<'format> TieredStorageWriter<'format> {
pub fn new(
file_path: impl AsRef<Path>,
format: &'format TieredStorageFormat,
) -> TieredStorageResult<Self> {
Ok(Self {
storage: TieredStorageFile::new_writable(file_path)?,
format,
})
}
pub fn write_accounts<
'a,
'b,
T: ReadableAccount + Sync,
U: StorableAccounts<'a, T>,
V: Borrow<AccountHash>,
>(
&self,
accounts: &StorableAccountsWithHashesAndWriteVersions<'a, 'b, T, U, V>,
skip: usize,
) -> TieredStorageResult<Vec<StoredAccountInfo>> {
let footer = TieredStorageFooter {
account_meta_format: self.format.account_meta_format,
owners_block_format: self.format.owners_block_format,
account_block_format: self.format.account_block_format,
index_block_format: self.format.index_block_format,
account_entry_count: accounts
.accounts
.len()
.saturating_sub(skip)
.try_into()
.expect("num accounts <= u32::MAX"),
..TieredStorageFooter::default()
};
footer.write_footer_block(&self.storage)?;
Err(TieredStorageError::Unsupported())
}
}