pub struct TrackingRow {
pub id: String,
pub onto: String,
pub db_state: Option<String>,
pub schema_state: Option<String>,
pub applied: bool,
}Expand description
One row of _pylon."Migrations" — covers both apply’s own tracking
logic (id/onto/applied, for computing the applied tip) and migration create’s diff-baseline lookup (db_state and schema_state, the JSON
snapshots recorded on the tip row by apply). filename isn’t read —
nothing in this codebase actually consults it once a row exists.
Fields§
§id: String§onto: String§db_state: Option<String>The db_state JSON snapshot (catalog/DDL-visible shape only),
pre-rendered as text (db_state::text) rather than decoded as
jsonb — callers (db_state_from_json) want the raw JSON string to
re-parse, not an already-decoded value tree.
schema_state: Option<String>The full SchemaDescriptor JSON as of this migration (everything
db_state has, plus schema semantics with zero DDL footprint —
readonly, rewrites, Channels, …). migration create diffs
against this (the tip row’s own recorded state), not against
_pylon."Schema", for the same reason db_state already does:
watch may have pushed ad hoc changes straight to the live database
without ever going through migration create, and those must still
show up as a pending change here rather than silently being treated
as already-baselined. Pre-rendered as text for the same reason as
db_state — re-parse via SchemaDescriptor.from_json.
applied: boolTrait Implementations§
Source§impl Clone for TrackingRow
impl Clone for TrackingRow
Source§impl Debug for TrackingRow
impl Debug for TrackingRow
Source§impl PartialEq for TrackingRow
impl PartialEq for TrackingRow
impl StructuralPartialEq for TrackingRow
Auto Trait Implementations§
impl Freeze for TrackingRow
impl RefUnwindSafe for TrackingRow
impl Send for TrackingRow
impl Sync for TrackingRow
impl Unpin for TrackingRow
impl UnsafeUnpin for TrackingRow
impl UnwindSafe for TrackingRow
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,
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> 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.