pub enum CompatibilityMode {
None,
Backward,
Forward,
Full,
}Expand description
Schema compatibility modes for schema evolution
Defines how strictly new schema versions must be compatible with existing versions.
Variants§
None
No compatibility checking - any schema change is allowed
Backward
New schema can read data written with old schema (most common)
- Allows: adding optional fields, removing fields from reader
- Use case: Consumers upgrade before producers
Forward
Old schema can read data written with new schema
- Allows: adding required fields, removing optional fields
- Use case: Producers upgrade before consumers
Full
Both backward and forward compatible (strictest)
- Use case: Critical schemas that need both directions
Implementations§
Trait Implementations§
Source§impl Clone for CompatibilityMode
impl Clone for CompatibilityMode
Source§fn clone(&self) -> CompatibilityMode
fn clone(&self) -> CompatibilityMode
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CompatibilityMode
impl Debug for CompatibilityMode
Source§impl Default for CompatibilityMode
impl Default for CompatibilityMode
Source§impl PartialEq for CompatibilityMode
impl PartialEq for CompatibilityMode
impl Copy for CompatibilityMode
impl Eq for CompatibilityMode
impl StructuralPartialEq for CompatibilityMode
Auto Trait Implementations§
impl Freeze for CompatibilityMode
impl RefUnwindSafe for CompatibilityMode
impl Send for CompatibilityMode
impl Sync for CompatibilityMode
impl Unpin for CompatibilityMode
impl UnwindSafe for CompatibilityMode
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request