pub enum SchemaChange {
Show 22 variants
GraphCreated {
id: GraphId,
name: DbString,
graph_type: Option<GraphTypeId>,
},
GraphDropped {
id: GraphId,
},
GraphTypeCreated {
graph_type: GraphType,
},
GraphTypeDropped {
id: GraphTypeId,
},
NodeTypeAdded {
graph_type: GraphTypeId,
label: DbString,
def: NodeTypeDefV1,
},
EdgeTypeAdded {
graph_type: GraphTypeId,
label: DbString,
def: EdgeTypeDefV1,
},
NodeTypeDropped {
graph_type: GraphTypeId,
name: DbString,
},
EdgeTypeDropped {
graph_type: GraphTypeId,
name: DbString,
},
RecordTypeAdded {
graph_type: GraphTypeId,
def: RecordTypeDef,
},
PropertyIndexCreated {
label: DbString,
property: DbString,
kind: SchemaPropertyIndexKind,
},
PropertyIndexDropped {
label: DbString,
property: DbString,
},
PropertyIndexCreatedNamed {
label: DbString,
property: DbString,
kind: SchemaPropertyIndexKind,
name: Option<DbString>,
},
NodeTypeAddedV2 {
graph_type: GraphTypeId,
label: DbString,
def: NodeTypeDef,
},
EdgeTypeAddedV2 {
graph_type: GraphTypeId,
label: DbString,
def: EdgeTypeDef,
},
CompositePropertyIndexCreated {
label: DbString,
properties: SmallVec<[DbString; 4]>,
kinds: SmallVec<[SchemaPropertyIndexKind; 4]>,
name: Option<DbString>,
},
CompositePropertyIndexDropped {
label: DbString,
properties: SmallVec<[DbString; 4]>,
},
VectorIndexCreated {
label: DbString,
property: DbString,
kind: SchemaVectorIndexKind,
dimension: u32,
name: Option<DbString>,
hnsw_config: Option<HnswIndexConfig>,
ivf_config: Option<IvfIndexConfig>,
},
VectorIndexDropped {
label: DbString,
property: DbString,
},
TextIndexCreated {
label: DbString,
property: DbString,
name: Option<DbString>,
},
TextIndexDropped {
label: DbString,
property: DbString,
},
EdgePropertyIndexCreated {
label: DbString,
property: DbString,
kind: SchemaPropertyIndexKind,
name: Option<DbString>,
},
EdgePropertyIndexDropped {
label: DbString,
property: DbString,
},
}Expand description
Schema change payload.
Variants§
GraphCreated
Graph creation.
Fields
graph_type: Option<GraphTypeId>Optional graph type assigned at creation.
GraphDropped
Graph deletion.
GraphTypeCreated
Graph type creation.
GraphTypeDropped
Graph type deletion.
Fields
id: GraphTypeIdDropped graph type ID.
NodeTypeAdded
Node type addition.
EdgeTypeAdded
Edge type addition.
NodeTypeDropped
Node type deletion.
EdgeTypeDropped
Edge type deletion.
RecordTypeAdded
Record type addition.
PropertyIndexCreated
Property index creation.
Fields
kind: SchemaPropertyIndexKindDeclared index value kind.
PropertyIndexDropped
Property index deletion.
PropertyIndexCreatedNamed
Property index creation with optional explicit catalog name.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable. Old WALs continue
to decode through SchemaChange::PropertyIndexCreated.
Fields
kind: SchemaPropertyIndexKindDeclared index value kind.
NodeTypeAddedV2
Node type addition carrying v2 type-model fields.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable. New code emits this
variant; old WALs continue to decode through SchemaChange::NodeTypeAdded.
EdgeTypeAddedV2
Edge type addition carrying v2 type-model fields.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable. New code emits this
variant; old WALs continue to decode through SchemaChange::EdgeTypeAdded.
CompositePropertyIndexCreated
Composite property index creation with optional explicit catalog name.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable.
Fields
kinds: SmallVec<[SchemaPropertyIndexKind; 4]>Declared index value kinds in declaration order.
CompositePropertyIndexDropped
Composite property index deletion.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable.
Fields
VectorIndexCreated
Vector property index creation with optional explicit catalog name.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable.
Fields
kind: SchemaVectorIndexKindDeclared vector index algorithm.
hnsw_config: Option<HnswIndexConfig>Optional HNSW construction parameters.
ivf_config: Option<IvfIndexConfig>Optional IVF construction parameters.
VectorIndexDropped
Vector property index deletion.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable.
TextIndexCreated
Text property index creation with optional explicit catalog name.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable.
Fields
TextIndexDropped
Text property index deletion.
Declared after every existing v1.1 variant so the postcard
discriminants of all earlier variants remain stable.
EdgePropertyIndexCreated
Edge property index creation with optional explicit catalog name.
Declared after every existing variant so the postcard discriminants of
all earlier variants remain stable.
Fields
kind: SchemaPropertyIndexKindDeclared index value kind.
EdgePropertyIndexDropped
Edge property index deletion.
Declared after every existing variant so the postcard discriminants of
all earlier variants remain stable.
Implementations§
Source§impl SchemaChange
impl SchemaChange
Sourcepub const ALL: &[fn() -> Self]
pub const ALL: &[fn() -> Self]
Factory table with one sample change for each SchemaChange variant.
Hidden legacy variants are included because their postcard discriminants are reserved for WAL compatibility.
Sourcepub const VARIANT_COUNT: usize
pub const VARIANT_COUNT: usize
Number of known SchemaChange variants in this build.
Sourcepub fn variant_name(&self) -> &'static str
pub fn variant_name(&self) -> &'static str
Stable telemetry name for this schema-change variant.
Trait Implementations§
Source§impl Clone for SchemaChange
impl Clone for SchemaChange
Source§fn clone(&self) -> SchemaChange
fn clone(&self) -> SchemaChange
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SchemaChange
impl Debug for SchemaChange
Source§impl<'de> Deserialize<'de> for SchemaChange
impl<'de> Deserialize<'de> for SchemaChange
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 PartialEq for SchemaChange
impl PartialEq for SchemaChange
Source§fn eq(&self, other: &SchemaChange) -> bool
fn eq(&self, other: &SchemaChange) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for SchemaChange
impl Serialize for SchemaChange
impl StructuralPartialEq for SchemaChange
Auto Trait Implementations§
impl Freeze for SchemaChange
impl RefUnwindSafe for SchemaChange
impl Send for SchemaChange
impl Sync for SchemaChange
impl Unpin for SchemaChange
impl UnsafeUnpin for SchemaChange
impl UnwindSafe for SchemaChange
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.