Yueh-Hsuan Chiang

Results 14 issues of Yueh-Hsuan Chiang

FIFO compaction can theoretically open a DB with any compaction style. However, the current code only allows FIFO compaction to open a DB with a single level. This PR relaxes...

CLA Signed

#### What's in this PR This PR adds get_column_family_metadata_cf() API based on [rocksdb-10207](https://github.com/facebook/rocksdb/pull/10207) that returns the metadata of the specified column family that describes its level structure. get_column_family_metadata_cf() returns a...

#### Summary of Changes Removes the constant default for ShredStorageType::RocksFifo as the shred storage size is either user-specified or derived from --limit-ledger-size in #27459.

#### Summary of Changes Make two FIFO validator arguments public: --rocksdb-shred-compaction and --rocksdb_fifo_shred_storage_size. When --rocksdb_fifo_shred_storage_size is unspecified, it is now derived from `--limit-ledger-size` by assuming each shred takes 3200 bytes...

#### Problem HotStorage currently doesn't implement append_accounts(). #### Summary of Changes This PR drafts HotStorageWriter::write_accounts().

#### Problem The implementation of write_accounts() for HotAccountStorage is missing. It consists of the writing of account blocks, index block, and owners block. #### Summary of Changes This PR completes...

#### Problem To write the owners-block, it requires an in-memory struct that maintains a set of unique owner addresses while providing a look-up function to obtain the OwnerOffset with the...

#### Problem To allow hot-storage to use HotStorageWriter::write_account() to implement AccountsFile::append_accounts(), it is required to provide a Vector of StoredAccountInfo to allow AccountsDB to properly prepare the entry for each...

#### Problem TieredStorageReader is a wrapper enum that works for both Hot and Cold storage readers, but its get_account() and account_matches_owner() API are missing. #### Summary of Changes Add get_account()...

#### Problem Currently, right after TieredStorage::write_accounts() is called, it immediately mmap the file in case it is the hot storage. It might be more suitable to delay the mmap until...

stale