Skip to main content

M0005

Struct M0005 

Source
pub struct M0005;
Expand description

Migration that adds a leading-cursor index for .all() subscription scans.

§Changes

  • Creates idx_event_type_cursor on (aggregator_type, timestamp, timestamp_subsec, version, id).

§Notes

  • This is additive: idx_event_type_routing_cursor (m0004) is kept, since it still serves subscriptions that filter by routing_key.
  • The trailing id is included so the index fully covers the keyset tiebreaker (id is the final ORDER BY / cursor column), avoiding any residual sort.
  • It also lets the latest_timestamp() query (MAX(timestamp) over the same filter) read the index tail.

§Dependencies

This migration depends on M0004.

Trait Implementations§

Source§

impl Migration<MySql> for M0005

Source§

fn app(&self) -> &str

Returns the application name associated with the migration. This can be the name of the folder or library where the migration is located. Read more
Source§

fn name(&self) -> &str

Returns the migration name, typically the file name without the extension. Read more
Source§

fn parents(&self) -> Vec<Box<dyn Migration<MySql>>>

Returns the list of parent migrations that must be applied before this migration can be applied. Read more
Source§

fn operations(&self) -> Vec<Box<dyn Operation<MySql>>>

Returns the list of operations that make up the migration. Read more
Source§

fn replaces(&self) -> Vec<Box<dyn Migration<DB>>>

Returns the list of migrations that this migration replaces. Read more
Source§

fn run_before(&self) -> Vec<Box<dyn Migration<DB>>>

Returns the list of migrations that should be run before this migration when applying. but when reverting this migration these migrations should be reverted after this migration is reverted. Read more
Source§

fn is_atomic(&self) -> bool

Indicates whether the migration is atomic. By default, this function returns true, meaning the migration is atomic. Read more
Source§

fn is_virtual(&self) -> bool

Indicates whether the migration is virtual. By default, this function returns false, meaning the migration is not virtual. Read more
Source§

impl Migration<Postgres> for M0005

Source§

fn app(&self) -> &str

Returns the application name associated with the migration. This can be the name of the folder or library where the migration is located. Read more
Source§

fn name(&self) -> &str

Returns the migration name, typically the file name without the extension. Read more
Source§

fn parents(&self) -> Vec<Box<dyn Migration<Postgres>>>

Returns the list of parent migrations that must be applied before this migration can be applied. Read more
Source§

fn operations(&self) -> Vec<Box<dyn Operation<Postgres>>>

Returns the list of operations that make up the migration. Read more
Source§

fn replaces(&self) -> Vec<Box<dyn Migration<DB>>>

Returns the list of migrations that this migration replaces. Read more
Source§

fn run_before(&self) -> Vec<Box<dyn Migration<DB>>>

Returns the list of migrations that should be run before this migration when applying. but when reverting this migration these migrations should be reverted after this migration is reverted. Read more
Source§

fn is_atomic(&self) -> bool

Indicates whether the migration is atomic. By default, this function returns true, meaning the migration is atomic. Read more
Source§

fn is_virtual(&self) -> bool

Indicates whether the migration is virtual. By default, this function returns false, meaning the migration is not virtual. Read more
Source§

impl Migration<Sqlite> for M0005

Source§

fn app(&self) -> &str

Returns the application name associated with the migration. This can be the name of the folder or library where the migration is located. Read more
Source§

fn name(&self) -> &str

Returns the migration name, typically the file name without the extension. Read more
Source§

fn parents(&self) -> Vec<Box<dyn Migration<Sqlite>>>

Returns the list of parent migrations that must be applied before this migration can be applied. Read more
Source§

fn operations(&self) -> Vec<Box<dyn Operation<Sqlite>>>

Returns the list of operations that make up the migration. Read more
Source§

fn replaces(&self) -> Vec<Box<dyn Migration<DB>>>

Returns the list of migrations that this migration replaces. Read more
Source§

fn run_before(&self) -> Vec<Box<dyn Migration<DB>>>

Returns the list of migrations that should be run before this migration when applying. but when reverting this migration these migrations should be reverted after this migration is reverted. Read more
Source§

fn is_atomic(&self) -> bool

Indicates whether the migration is atomic. By default, this function returns true, meaning the migration is atomic. Read more
Source§

fn is_virtual(&self) -> bool

Indicates whether the migration is virtual. By default, this function returns false, meaning the migration is not virtual. Read more

Auto Trait Implementations§

§

impl Freeze for M0005

§

impl RefUnwindSafe for M0005

§

impl Send for M0005

§

impl Sync for M0005

§

impl Unpin for M0005

§

impl UnsafeUnpin for M0005

§

impl UnwindSafe for M0005

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more