Changelog
· 21 min read
2025-12-12
Release
| crate | version |
|---|---|
| foyer | 0.21.1 |
| foyer-common | 0.21.1 |
| foyer-memory | 0.21.1 |
| foyer-storage | 0.21.1 |
| foyer-bench | 0.21.1 |
Changes
- Implement
From<std::io::Error>andFrom<bincode::Error>(if featureserdeis enabled) forErrorto simplify error handling.
2025-12-08
Release
| crate | version |
|---|---|
| foyer | 0.21.0 |
| foyer-common | 0.21.0 |
| foyer-memory | 0.21.0 |
| foyer-storage | 0.21.0 |
| foyer-bench | 0.21.0 |
Changes
[!IMPORTANT] Breaking Changes:
- Hybrid cache and memory cache
fetch()API is renamed toget_or_fetch(), and there are subtle changes in the arguments.- Hybrid cache
get()API functions the same as the previousobtain(), and theobtain()API is removed because the naming is obscure.- The Error type returned by all interfaces that return Result and Error has been refactored. When manually implementing Code for cache key or value, please pay attention to how errors are handled as described in the interface comments.
Features and Enhances:
- Refine hybrid cache read-related APIS.
- New
get()API: Replace the oldobtain()API, support memory and disk cache read, request deduplication, and other optimizations. (The oldget()API without disk cache request deduplication is deprecated.) - New
get_or_fetch()API: Replace the oldfetch()API, support memory and disk cache read, automatic cache refill on cache miss, request duduplication, and other optimizations. - Fix panics with race condition while using both
get()(previouslyobtain()) andget_or_fetch()(previouslyfetch()) on the same key. - Refine error and result type with
get_or_fetch()API.
- New
- Refine
SourceandAgepreprotities. Now,Sourcerefer to where the entry comes from, e.g. memory cache, disk cache, or outer;Agerefer to the generation the entry is in the disk cache. - Refine
Errortype. UseOpenDAL-like error definition. - Auto implement
Codeforbytes::Byteswithoutserdefeature. - Reduce task spawning on recovery.
Bug Fixes:
- Fix panics when cancelling spawned fetch requests.
- Fix string trimming when parsing io throttle.
- Fix build on
x86targets.
Testing:
- Support simulating io latency with psync io engine in
foyer-bench. - Refine hybrid cache fuzzy test.
2025-10-27
Release
| crate | version |
|---|---|
| foyer | 0.20.1 |
| foyer-common | 0.20.1 |
| foyer-memory | 0.20.1 |
| foyer-storage | 0.20.1 |
| foyer-bench | 0.20.1 |
Changes
- Fix metrics "Disk Op Duration".
2025-09-23
Release
| crate | version |
|---|---|
| foyer | 0.20.0 |
| foyer-common | 0.20.0 |
| foyer-memory | 0.20.0 |
| foyer-storage | 0.20.0 |
| foyer-bench | 0.20.0 |
Changes
- Fix race condition (panic / deadlock) when there are concurrent disk cache write operations and fetch operations on the same key.
- Fix heap-use-after-free on dropping foyer cache / hybrid cache while there are still ongoing disk IOs.
- Remove property
ephemeral.
2025-09-02
Releases
| crate | version |
|---|---|
| foyer | 0.19.2 |
| foyer-common | 0.19.2 |
| foyer-memory | 0.19.2 |
| foyer-storage | 0.19.2 |
| foyer-bench | 0.19.2 |
Changes
- Fix: Fix hybrid cache in-memory compatible mode conditional statement without
io_enginespecified.
2025-08-21
Releases
| crate | version |
|---|---|
| foyer | 0.19.1 |
| foyer-common | 0.19.1 |
| foyer-memory | 0.19.1 |
| foyer-storage | 0.19.1 |
| foyer-bench | 0.19.1 |
Changes
- Feature: Support
serdefor properties.
2025-08-16
Releases
| crate | version |
|---|---|
| foyer | 0.18.1 |
| foyer-common | 0.18.1 |
| foyer-memory | 0.18.1 |
| foyer-storage | 0.18.1 |
| foyer-bench | 0.18.1 |
Changes
- Fix: Compare checksum before large object disk cache entry serialization.
2025-08-13
Releases
| crate | version |
|---|---|
| foyer | 0.19.0 |
| foyer-common | 0.19.0 |
| foyer-memory | 0.19.0 |
| foyer-storage | 0.19.0 |
| foyer-bench | 0.19.0 |
Changes
- Refactor: Introduce new disk cache engine, io engine, io device abstraction.
- Feature: Introduce io_uirng based disk cache io engine.
- Feature: Support combine multiple devices for disk cache engine.
- Feature: Make disk cache write queue queryable.
- Feature: Support filter for in-memory cache.
- Fix: Remove
fastrace/enablewhen featuretracingis enabled. - Refactor: Rename large object disk cache engine to block engine.
- Refactor: Decouple block engine block size with device region size, remove device region size abstraction.
- Refactor: Refactor disk cache builder to provide more user-friendly and developer-friendly APIs.
- Refactor: Temporarily REMOVE small object disk cache engine and mixed disk cache engine. Plan to add them back in the refactored form in the next version.
2025-07-13
Releases
| crate | version |
|---|---|
| foyer | 0.18.0 |
| foyer-common | 0.18.0 |
| foyer-memory | 0.18.0 |
| foyer-storage | 0.18.0 |
| foyer-bench | 0.18.0 |
Changes
- Introduce SIEVE algorithm for in-memory cache eviction policy.
- Auto close hybrid cache on the last reference drops.
- Expose internal foyer error types.
- Fix
delete()implementation for large object disk cache to prevent from phantom entries. - Remove unnecessary and confusing
with_flush()API. - Use "cargo xtask"-style for developing, yank
makesystem. - Bump MSRV to v1.82.0
2025-06-27
Releases
| crate | version |
|---|---|
| foyer | 0.17.4 |
| foyer-common | 0.17.4 |
| foyer-memory | 0.17.4 |
| foyer-storage | 0.17.4 |
| foyer-bench | 0.17.4 |
Changes
- Use
BuildHasherDefault<XxHash64>asDefaultHasherto make hash results consistent across runs.
2025-05-22
Releases
| crate | version |
|---|---|
| foyer | 0.17.3 |
| foyer-common | 0.17.3 |
| foyer-memory | 0.17.3 |
| foyer-storage | 0.17.3 |
| foyer-bench | 0.17.3 |
Changes
- Use
DefaultHasher(alias forstd::hash::BuilderHasherDefault<ahash::AHaser>) as the default hasher to guarantee hash algorithm stable across runs.
2025-05-14
Releases
| crate | version |
|---|---|
| foyer | 0.17.2 |
| foyer-common | 0.17.2 |
| foyer-memory | 0.17.2 |
| foyer-storage | 0.17.2 |
| foyer-bench | 0.17.2 |
Changes
- Fix disk cache return wrong entry on key hash collision.
2025-05-09
Releases
| crate | version |
|---|---|
| foyer | 0.17.1 |
| foyer-common | 0.17.1 |
| foyer-memory | 0.17.1 |
| foyer-storage | 0.17.1 |
| foyer-bench | 0.17.1 |
Changes
- Refine load error handling to prevent from panics on disk data corruption.
- Derive
Partial, EqforThrottleandIopsCounter.
2025-04-28
Releases
| crate | version |
|---|---|
| foyer | 0.17.0 |
| foyer-common | 0.17.0 |
| foyer-memory | 0.17.0 |
| foyer-storage | 0.17.0 |
| foyer-bench | 0.17.0 |
Changes
- Refine entry-level properties.
- Packing
ephemeral,hint,locationintoCachePropertiesandHybridCacheProperties, useinsert_with_properties()andfetch_with_properties()for setting them. - Migration from
foyer < v0.17.0: Repleace.insert_with_hint(..),.insert_ephemeral(..), etc withinsert_with_properties(..)andfetch_with_properties(..).
- Packing
- Refine disk cache insertion with entries populated from the disk cache.
- Use an age-based FIFO policy to manager large object disk cache.
- Track the source of in-memory cache entries.
- When an in-memory cache entry is being inserted into the disk cache, the disk cache will determine if to skip it according to its resource and age. Entries populated from the disk cache and are not going to evicted soon will be skipped.
- Support flush entries in the in-memory cache to the disk cache on closing the hybrid cache.
- Migration from
foyer < v0.17.0: Enable by.with_flush_on_close(true)with the hybrid cache builder.
- Migration from
- Refine io throttling.
- Support advanced io throttling by read/write IOPS/throughput, and support count IOs by IO count or by IO count with IO size.
- Migration from
foyer < v0.17.0: Please set io throttling for device, instead of usingRateLimiterAmissionPicker.
- Support request deduplication and one-flight optimization with
fetch(..)interface for the disk cache.- Migration from
foyer < v0.17.0: Use.fetch_with_properties(..)API and set thelocationofHybridCachePropertiestoLocation::OnDisk.
- Migration from
- Miscs:
- Add
builder()API forCacheandHybridCacheto create builders. - Opt-out tracing dependency by default, enable it by enabling
tracingfeature. - Bump
mixtricstov0.1.
- Add
Latest foyer-bench usage:
bench tool for foyer - Hybrid cache for Rust
Usage: foyer-bench [OPTIONS] <--file <FILE>|--dir <DIR>|--no-disk>
Options:
--no-disk
Run with in-memory cache compatible mode
-f, --file <FILE>
File for disk cache data. Use `DirectFile` as device
-d, --dir <DIR>
Directory for disk cache data. Use `DirectFs` as device
--mem <MEM>
In-memory cache capacity [default: "1.0 GiB"]
--disk <DISK>
Disk cache capacity [default: "1.0 GiB"]
-t, --time <TIME>
(s) [default: 60]
--report-interval <REPORT_INTERVAL>
(s) [default: 2]
--w-rate <W_RATE>
Write rate limit per writer [default: "0 B"]
--r-rate <R_RATE>
Read rate limit per reader [default: "0 B"]
--entry-size-min <ENTRY_SIZE_MIN>
Min entry size [default: "64.0 KiB"]
--entry-size-max <ENTRY_SIZE_MAX>
Max entry size [default: "64.0 KiB"]
--get-range <GET_RANGE>
Reader lookup key range [default: 10000]
--region-size <REGION_SIZE>
Disk cache region size [default: "64.0 MiB"]
--flushers <FLUSHERS>
Flusher count [default: 4]
--reclaimers <RECLAIMERS>
Reclaimer count [default: 4]
--writers <WRITERS>
Writer count [default: 16]
--readers <READERS>
Reader count [default: 16]
--recover-mode <RECOVER_MODE>
[default: none] [possible values: none, quiet, strict]
--recover-concurrency <RECOVER_CONCURRENCY>
Recover concurrency [default: 16]
--disk-write-iops <DISK_WRITE_IOPS>
Disk write iops throttle [default: 0]
--disk-read-iops <DISK_READ_IOPS>
Disk read iops throttle [default: 0]
--disk-write-throughput <DISK_WRITE_THROUGHPUT>
Disk write throughput throttle [default: "0 B"]
--disk-read-throughput <DISK_READ_THROUGHPUT>
Disk read throughput throttle [default: "0 B"]
--clean-region-threshold <CLEAN_REGION_THRESHOLD>
`0` means use default [default: 0]
--shards <SHARDS>
Shards of both in-memory cache and disk cache indexer [default: 64]
--metrics
weigher to enable metrics exporter
--user-runtime-worker-threads <USER_RUNTIME_WORKER_THREADS>
Benchmark user runtime worker threads [default: 0]
--runtime <RUNTIME>
Dedicated runtime type [default: disabled] [possible values: disabled, unified, separated]
--runtime-worker-threads <RUNTIME_WORKER_THREADS>
Dedicated runtime worker threads [default: 0]
--runtime-max-blocking-threads <RUNTIME_MAX_BLOCKING_THREADS>
Max threads for blocking io [default: 0]
--write-runtime-worker-threads <WRITE_RUNTIME_WORKER_THREADS>
Dedicated runtime for writes worker threads [default: 0]
--write-runtime-max-blocking-threads <WRITE_RUNTIME_MAX_BLOCKING_THREADS>
Dedicated runtime for writes Max threads for blocking io [default: 0]
--read-runtime-worker-threads <READ_RUNTIME_WORKER_THREADS>
Dedicated runtime for reads worker threads [default: 0]
--read-runtime-max-blocking-threads <READ_RUNTIME_MAX_BLOCKING_THREADS>
Dedicated runtime for writes max threads for blocking io [default: 0]
--compression <COMPRESSION>
compression algorithm [default: none] [possible values: none, zstd, lz4]
--engine <ENGINE>
Disk cache engine [default: large]
--distribution <DISTRIBUTION>
Time-series operation distribution [default: none]
--distribution-zipf-n <DISTRIBUTION_ZIPF_N>
For `--distribution zipf` only [default: 100]
--distribution-zipf-s <DISTRIBUTION_ZIPF_S>
For `--distribution zipf` only [default: 0.5]
--warm-up <WARM_UP>
[default: 2]
--flush
--invalid-ratio <INVALID_RATIO>
[default: 0.8]
--eviction <EVICTION>
[default: lru] [possible values: lru, lfu, fifo, s3fifo]
--policy <POLICY>
[default: eviction] [possible values: eviction, insertion]
--buffer-pool-size <BUFFER_POOL_SIZE>
[default: "16.0 MiB"]
--blob-index-size <BLOB_INDEX_SIZE>
[default: "4.0 KiB"]
--set-size <SET_SIZE>
[default: "16.0 KiB"]
--set-cache-capacity <SET_CACHE_CAPACITY>
[default: 64]
--trace-insert <TRACE_INSERT>
Record insert trace threshold. Only effective with "tracing" feature [default: 1s]
--trace-get <TRACE_GET>
Record get trace threshold. Only effective with "tracing" feature [default: 1s]
--trace-obtain <TRACE_OBTAIN>
Record obtain trace threshold. Only effective with "tracing" feature [default: 1s]
--trace-remove <TRACE_REMOVE>
Record remove trace threshold. Only effective with "tracing" feature [default: 1s]
--trace-fetch <TRACE_FETCH>
Record fetch trace threshold. Only effective with "tracing" feature [default: 1s]
--flush-on-close
--lodc-fifo-probation-ratio <LODC_FIFO_PROBATION_RATIO>
[default: 0.1]
-h, --help
Print help (see more with '--help')
-V, --version
Print version
2025-04-22
Releases
| crate | version |
|---|---|
| foyer | 0.15.4 |
| foyer-common | 0.15.4 |
| foyer-memory | 0.15.4 |
| foyer-storage | 0.15.4 |
| foyer-bench | 0.15.4 |
Changes
- Add metrics for large object disk cache indexer conflicts.
2025-04-11
Releases
| crate | version |
|---|---|
| foyer | 0.16.1 |
| foyer-common | 0.16.1 |
| foyer-memory | 0.16.1 |
| foyer-storage | 0.16.1 |
| foyer-bench | 0.16.1 |
Changes
- Fix panic when building large object disk cache engine if
buffer_pool_size / flushersis not 4K-aligned. - Make CI run on release branches.
2025-04-07
Releases
| crate | version |
|---|---|
| foyer | 0.16.0 |
| foyer-common | 0.16.0 |
| foyer-memory | 0.16.0 |
| foyer-storage | 0.16.0 |
| foyer-bench | 0.16.0 |
Changes
- Refine the cache key/value serialization and deserializaion.
- Support customized serialization and deserialization.
- Support serialization and deserialization with
serdeandbincode. (optional)
- Make
serdeandbincodeoptional, and disabled by default. You can enable it withserdefeature. - Reduce verbose warning logs.
2025-03-28
Releases
| crate | version |
|---|---|
| foyer | 0.15.3 |
| foyer-common | 0.15.3 |
| foyer-memory | 0.15.3 |
| foyer-storage | 0.15.3 |
| foyer-bench | 0.15.3 |
Changes
- Fix lodc flush buffer split condition calculation error.
2025-03-26
Releases
| crate | version |
|---|---|
| foyer | 0.15.2 |
| foyer-common | 0.15.2 |
| foyer-memory | 0.15.2 |
| foyer-storage | 0.15.2 |
| foyer-bench | 0.15.2 |
Changes
- Mitigate low-priority errors. Refine error handling.
2025-03-25
Releases
| crate | version |
|---|---|
| foyer | 0.15.1 |
| foyer-common | 0.15.1 |
| foyer-memory | 0.15.1 |
| foyer-storage | 0.15.1 |
| foyer-bench | 0.15.1 |
Changes
- Support either write disk cache on in-memory cache evction or on insertion with
HybridCacheBuilder::with_policy().
2025-03-24
Releases
| crate | version |
|---|---|
| foyer | 0.15.0 |
| foyer-common | 0.15.0 |
| foyer-memory | 0.15.0 |
| foyer-storage | 0.15.0 |
| foyer-bench | 0.15.0 |
Changes
- Support blob file format to speed up disk cache recovery and reduce reclaim overhead.
- Make histogram metrics more precise.
- Refine redundant codes.
- Refine dependencies.
2025-02-08
Releases
| crate | version |
|---|---|
| foyer | 0.14.1 |
| foyer-common | 0.14.1 |
| foyer-memory | 0.14.1 |
| foyer-storage | 0.14.1 |
| foyer-bench | 0.14.1 |
Changes
- Use
tokio-rs/tokioby default as the runtime, usemadsim-tokiowhenmadsimconfiguration is enabled. - Optimize dependencies.
2025-01-14
Releases
| crate | version |
|---|---|
| foyer | 0.14.0 |
| foyer-common | 0.14.0 |
| foyer-memory | 0.14.0 |
| foyer-storage | 0.14.0 |
| foyer-bench | 0.14.0 |
Changes
- Insert disk cache on in-memory cache eviction, instead of double write on insertion.
- Extrace multiple metrics backend support to crate
mixtrics.
2024-12-04
Releases
| crate | version |
|---|---|
| foyer | 0.13.1 |
| foyer-common | 0.13.1 |
| foyer-memory | 0.13.1 |
| foyer-storage | 0.13.1 |
| foyer-bench | 0.13.1 |
Changes
- Refactor cache builders.
namefield requiresCow<'static, str>instead of&'static strfor convenience.
2024-12-02
Releases
| crate | version |
|---|---|
| foyer | 0.13.0 |
| foyer-common | 0.13.0 |
| foyer-memory | 0.13.0 |
| foyer-storage | 0.13.0 |
| foyer-bench | 0.13.0 |
Changes
- Refine in-memory cache framework:
- Allow "get"/"release"/"entry drop" to acquire read lock or lock-free if the algorithm allows.
- Make most
EvictionAPIs safe, only acquire unsafe Rust while accessing algorithm managed per-entry state withUnsafeCell. - Replace the "reinsertion" design with
releasewith real "release last ref" design. - Rename some APIs.
- Refine metrics framework:
- Replace
metricswith customized metrics framework to support various metrics backend. - Implement built-in metrics exporter that adapts to crate
prometheus/prometheus-client/opentelemetry.
- Replace
2024-10-11
Releases
| crate | version |
|---|---|
| foyer | 0.12.2 |
| foyer-common | 0.12.2 |
| foyer-intrusive | 0.12.2 |
| foyer-memory | 0.12.2 |
| foyer-storage | 0.12.2 |
| foyer-bench | 0.12.2 |
Changes
- Revert "Scale shards to 1 when there is not enough capacity". It would be useful sometimes. Just raise the warning.
2024-10-10
Releases
| crate | version |
|---|---|
| foyer | 0.12.1 |
| foyer-common | 0.12.1 |
| foyer-intrusive | 0.12.1 |
| foyer-memory | 0.12.1 |
| foyer-storage | 0.12.1 |
| foyer-bench | 0.12.1 |
Changes
- Downgrade hashbrown to 0.14 to fix build on nightly for projects using hashbrown < 0.15.
- Fix build with madsim.
- Refine small object disk cache.
- Scale shards to 1 when there is not enough capacity.
2024-10-09
Releases
| crate | version |
|---|---|
| foyer | 0.12.0 |
| foyer-common | 0.12.0 |
| foyer-intrusive | 0.12.0 |
| foyer-memory | 0.12.0 |
| foyer-storage | 0.12.0 |
| foyer-bench | 0.12.0 |
Changes
- Align the versions of all components to the same. 📣
- Introduce small object disk cache. 🎉
- Introduce mixed/large/small storage engine.
- Refactor builders for the hybrid cache.
- Introduce submit queue size threshold to prevent from channel piling up.
- Support
jeproffor foyer-bench. - Rename feature "mtrace" to "tracing".
2024-09-25
Releases
| crate | version |
|---|---|
| foyer | 0.11.5 |
| foyer-common | 0.9.5 |
| foyer-intrusive | 0.9.5 |
| foyer-memory | 0.7.5 |
| foyer-storage | 0.10.5 |
| foyer-bench | 0.3.5 |
Changes
- Fix panic on dropping the hybrid cache. #736
2024-09-24
Releases
| crate | version |
|---|---|
| foyer | 0.11.4 |
| foyer-common | 0.9.4 |
| foyer-intrusive | 0.9.4 |
| foyer-memory | 0.7.4 |
| foyer-storage | 0.10.4 |
| foyer-bench | 0.3.4 |
Changes
- Revert pre-serialization design. The insert latency and memory usage would be better for most cases.
- Rename
with_buffer_thresholdtowith_buffer_pool_size. The old method is kept but marked as deprecated. - Raise a warn when using
DirectFileDeviceon within a file system.
2024-09-20
Releases
| crate | version |
|---|---|
| foyer | 0.11.3 |
| foyer-common | 0.9.3 |
| foyer-intrusive | 0.9.3 |
| foyer-memory | 0.7.3 |
| foyer-storage | 0.10.3 |
| foyer-bench | 0.3.3 |
Changes
- Fix panicked by io buffer pool alignment issue.
2024-09-12
Releases
| crate | version |
|---|---|
| foyer | 0.11.2 |
| foyer-common | 0.9.2 |
| foyer-intrusive | 0.9.2 |
| foyer-memory | 0.7.2 |
| foyer-storage | 0.10.2 |
| foyer-bench | 0.3.2 |
Changes
- Support windows (for
foyeronly). - Bump rust toolchain to
1.82.0. - Expose in-memory cache builder and cache entry.
- Reduce page fault and vec growth overhead.
- Use bytes size for
foyer-bench. - Fix install deps script.
2024-08-31
Releases
| crate | version |
|---|---|
| foyer | 0.11.1 |
| foyer-common | 0.9.1 |
| foyer-intrusive | 0.9.1 |
| foyer-memory | 0.7.1 |
| foyer-storage | 0.10.1 |
| foyer-bench | 0.3.1 |
Changes
- Add metrics for serde.
- Refine
fetchruntime usage. - Fix unhandled low-layer errors. #674 #677 #679
- Implement
DefaultforTokioRuntimeConfig. - Fix typos and format code with unstable features.
2024-08-21
Releases
| crate | version |
|---|---|
| foyer | 0.11.0 |
| foyer-common | 0.9.0 |
| foyer-intrusive | 0.9.0 |
| foyer-memory | 0.7.0 |
| foyer-storage | 0.10.0 |
| foyer-bench | 0.3.0 |
Changes
- Support disk cache on raw block device.
- Support fine-grained storage engine runtime configuration.
- Enhance performance via reducing page fault.
- Refine storage engine framework for future features.
- Expose
Weightertrait. - Support
serdefor more configurations. - Update
foyer-benchwith more fine-grained configurations. - Fix panics with
Nonerecover mode.
2024-08-15
Releases
| crate | version |
|---|---|
| foyer | 0.10.4 |
| foyer-storage | 0.9.3 |
| foyer-bench | 0.2.3 |
Changes
- Support serde for recover mode configuration.
2024-08-14
Releases
| crate | version |
|---|---|
| foyer | 0.10.2 |
| foyer-storage | 0.9.2 |
| foyer-bench | 0.2.2 |
Changes
- Fix panic with "none" recovery mode.
2024-07-08
Releases
| crate | version |
|---|---|
| foyer | 0.10.1 |
| foyer-common | 0.8.1 |
| foyer-intrusive | 0.8.1 |
| foyer-memory | 0.6.1 |
| foyer-storage | 0.9.1 |
| foyer-bench | 0.2.1 |
Changes
- Refine write model, make flush buffer threshold configurable to mitigate memory usage spike and OOM.
2024-07-02
Releases
| crate | version |
|---|---|
| foyer | 0.10.0 |
| foyer-common | 0.8.0 |
| foyer-intrusive | 0.8.0 |
| foyer-memory | 0.6.0 |
| foyer-storage | 0.9.0 |
| foyer-bench | 0.2.0 |
Changes
- Introduce tail-based tracing framework with minitrace. Tail-based Tracing Example.
- Fix
fetch()disk cache refill on in-memory cache miss. - Publish foyer logo!
2024-06-14
Releases
| crate | version |
|---|---|
| foyer | 0.9.4 |
| foyer-storage | 0.8.5 |
| foyer-bench | 0.1.4 |
Changes
- Fix phantom entries after foyer storage recovery. #560
- Fix hybrid cache hit metrics with
fetch()interface. #563
2024-06-05
Releases
| crate | version |
|---|---|
| foyer | 0.9.3 |
| foyer-common | 0.7.3 |
| foyer-intrusive | 0.7.2 |
| foyer-memory | 0.5.2 |
| foyer-storage | 0.8.4 |
| foyer-bench | 0.1.3 |
Changes
- Hybrid cache
fetch()use the dedicated runtime by default if enabled. - Separate
fetch()andfetch_with_runtime()interface for in-memory cache.
2024-06-04
Releases
| crate | version |
|---|---|
| foyer-storage | 0.8.3 |
