Skip to content

Commit

Permalink
Block cache with an infinite stream option (#687)
Browse files Browse the repository at this point in the history
* Block cache with an infinite stream option

This commit makes two major changes to the block cache. The most important is
that the block cache's major CPU consumption -- the construction of `Block`
instances -- is now done in a separate OS thread from the tokio runtime. This
allows us to introduce the second more important change: infinite streams of
`Blocks`. It is now possible for users to construct an unending stream of
`Block` instances that do not loop. We maintain a cache of constructed `Block`s
up to the maximum total bytes allow to minimize any potential latency impact.

Configuration is changed but not in a backward incompatible way.

REF SMP-664

Signed-off-by: Brian L. Troutwine <[email protected]>

* v0.18.1-rc0

Signed-off-by: Brian L. Troutwine <[email protected]>

---------

Signed-off-by: Brian L. Troutwine <[email protected]>
  • Loading branch information
blt authored Aug 24, 2023
1 parent b6b94f5 commit 569fdb0
Show file tree
Hide file tree
Showing 15 changed files with 672 additions and 281 deletions.
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## Unreleased

## [0.18.1-rc0]
### Added
- `lading-payload` crate is now split out from the `lading` crate
### Changed
- The block mechanism is reworked to provide a 'fixed' and 'streaming' model,
running in a separate OS thread from the tokio runtime.

## [0.18.0]
### Changed
- The predictive throttle no longer exists. The only options are stable and
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion lading/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "lading"
version = "0.18.0"
version = "0.18.1-rc0"
authors = ["Brian L. Troutwine <[email protected]>", "George Hahn <[email protected]"]
edition = "2021"
license = "MIT"
Expand Down
Loading

0 comments on commit 569fdb0

Please sign in to comment.