pub struct CacheArgs {
pub cache_dir: Option<PathBuf>,
pub cache_size_mb: Option<u64>,
pub max_blob_size_mb: Option<u64>,
pub max_rate_per_mb: Option<u64>,
pub max_probe_holds: Option<u64>,
pub stake_lane_reserved_holds: Option<u64>,
}Expand description
Cache storage configuration.
Origin selection (HTTP / filesystem / S3-compatible)
lives only in the config-file [cache.origin] table — there are no
CLI flags for it. The S3 backend has many fields (bucket, region,
endpoint, credentials) that don’t fit cleanly on a command line, and
keeping all three backends file-only avoids the trap of a
CLI-vs-TOML mismatch silently picking the wrong backend.
Fields§
§cache_dir: Option<PathBuf>Directory for cached blobs [default: <data-dir>/cache].
cache_size_mb: Option<u64>Maximum cache size in megabytes [default: 102400 (100 GB)].
max_blob_size_mb: Option<u64>Maximum single blob size in megabytes [default: 51200 (50 GB), capped to
cache_size_mb]. Must not exceed cache_size_mb; 0 = unlimited.
max_rate_per_mb: Option<u64>Buyer-side ABSOLUTE per-MB rate ceiling for paid cache-miss pulls, in USDC
base units (same units as --rate-per-mb) [default: 0 = unlimited]. This
node refuses a provider quote above the lower of this and the rate the
chosen candidate advertised at probe, before paying (#1375). Distinct from
the seller-side --delivery-ceiling clamp.
max_probe_holds: Option<u64>Max concurrently held (eviction-exempt) blobs for the probe hold
(ADR 005 §Hold budget) [default: 256]. 0 disables has_blob: true.
stake_lane_reserved_holds: Option<u64>Probe-hold slots reserved for the stake lane — registered
node-to-node cache-miss probes (#757, ADR 003 §Admission and
Priority) [default: 0 = off]. Under hold-budget pressure end-client
probes are shed once usage reaches max_probe_holds - N, reserving
the last N slots for node-to-node probes.
Trait Implementations§
Source§impl Args for CacheArgs
impl Args for CacheArgs
Source§fn augment_args<'b>(__clap_app: Command) -> Command
fn augment_args<'b>(__clap_app: Command) -> Command
Source§fn augment_args_for_update<'b>(__clap_app: Command) -> Command
fn augment_args_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§impl FromArgMatches for CacheArgs
impl FromArgMatches for CacheArgs
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Auto Trait Implementations§
impl Freeze for CacheArgs
impl RefUnwindSafe for CacheArgs
impl Send for CacheArgs
impl Sync for CacheArgs
impl Unpin for CacheArgs
impl UnsafeUnpin for CacheArgs
impl UnwindSafe for CacheArgs
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more