Struct nats::jetstream::StreamConfig
source · pub struct StreamConfig {Show 20 fields
pub name: String,
pub max_bytes: i64,
pub max_msgs: i64,
pub max_msgs_per_subject: i64,
pub discard: DiscardPolicy,
pub subjects: Vec<String>,
pub retention: RetentionPolicy,
pub max_consumers: i32,
pub max_age: Duration,
pub max_msg_size: i32,
pub storage: StorageType,
pub num_replicas: usize,
pub no_ack: bool,
pub duplicate_window: i64,
pub template_owner: String,
pub sealed: bool,
pub description: Option<String>,
pub allow_rollup: bool,
pub deny_delete: bool,
pub deny_purge: bool,
}
Expand description
StreamConfig
determines the properties for a stream.
There are sensible defaults for most. If no subjects are
given the name will be used as the only subject.
Fields§
§name: String
A name for the Stream. Must not have spaces, tabs or period .
characters
max_bytes: i64
How large the Stream may become in total bytes before the configured discard policy kicks in
max_msgs: i64
How large the Stream may become in total messages before the configured discard policy kicks in
max_msgs_per_subject: i64
Maximum amount of messages to keep per subject
discard: DiscardPolicy
When a Stream has reached its configured max_bytes
or max_msgs
, this policy kicks in.
DiscardPolicy::New
refuses new messages or DiscardPolicy::Old
(default) deletes old messages to make space
subjects: Vec<String>
Which NATS subjects to populate this stream with. Supports wildcards. Defaults to just the
configured stream name
.
retention: RetentionPolicy
How message retention is considered, Limits
(default), Interest
or WorkQueue
max_consumers: i32
How many Consumers can be defined for a given Stream, -1 for unlimited
max_age: Duration
Maximum age of any message in the stream, expressed in nanoseconds
max_msg_size: i32
The largest message that will be accepted by the Stream
storage: StorageType
The type of storage backend, File
(default) and Memory
num_replicas: usize
How many replicas to keep for each message in a clustered JetStream, maximum 5
no_ack: bool
Disables acknowledging messages that are received by the Stream
duplicate_window: i64
The window within which to track duplicate messages.
template_owner: String
The owner of the template associated with this stream.
sealed: bool
Indicates the stream is sealed and cannot be modified in any way
description: Option<String>
A short description of the purpose of this stream.
allow_rollup: bool
Indicates if rollups will be allowed or not.
deny_delete: bool
Indicates deletes will be denied or not.
deny_purge: bool
Indicates if purges will be denied or not.
Trait Implementations§
source§impl Clone for StreamConfig
impl Clone for StreamConfig
source§fn clone(&self) -> StreamConfig
fn clone(&self) -> StreamConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StreamConfig
impl Debug for StreamConfig
source§impl Default for StreamConfig
impl Default for StreamConfig
source§fn default() -> StreamConfig
fn default() -> StreamConfig
source§impl<'de> Deserialize<'de> for StreamConfig
impl<'de> Deserialize<'de> for StreamConfig
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl From<&StreamConfig> for StreamConfig
impl From<&StreamConfig> for StreamConfig
source§fn from(sc: &StreamConfig) -> StreamConfig
fn from(sc: &StreamConfig) -> StreamConfig
source§impl From<&str> for StreamConfig
impl From<&str> for StreamConfig
source§fn from(s: &str) -> StreamConfig
fn from(s: &str) -> StreamConfig
source§impl PartialEq for StreamConfig
impl PartialEq for StreamConfig
source§fn eq(&self, other: &StreamConfig) -> bool
fn eq(&self, other: &StreamConfig) -> bool
self
and other
values to be equal, and is used
by ==
.