pub struct ChangeRow {
pub seq: i64,
pub table_name: String,
pub op: String,
pub row_id: Option<String>,
pub changed_cols: Option<String>,
pub created_at: DateTime<Utc>,
}Expand description
One row of forge_change_log.
Mirrors the columns produced by the system migration’s
forge_notify_change() trigger. Kept deliberately close to the wire shape
so callers can decide how to map row_id (TEXT, may not be a UUID for
every table) and the comma-separated changed_cols string.
Fields§
§seq: i64Monotonic sequence number; the consumer’s high-water mark.
table_name: StringTable that produced the change.
op: StringSQL operation: INSERT, UPDATE, or DELETE.
row_id: Option<String>Text-encoded primary key. None only when the trigger could not
resolve OLD.id/NEW.id (e.g. a table with a non-id PK).
changed_cols: Option<String>For UPDATE, comma-separated column names whose values changed. None
for INSERT/DELETE and for UPDATEs where no columns differ.
created_at: DateTime<Utc>Server-side timestamp at which the trigger inserted the row.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ChangeRow
impl RefUnwindSafe for ChangeRow
impl Send for ChangeRow
impl Sync for ChangeRow
impl Unpin for ChangeRow
impl UnsafeUnpin for ChangeRow
impl UnwindSafe for ChangeRow
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<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>
Converts
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>
Converts
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