pub struct Lsn(pub u64);Expand description
PostgreSQL Log Sequence Number.
Represents a position in the write-ahead log (WAL). LSNs are used to track replication progress and identify specific points in the WAL stream.
§Format
PostgreSQL displays LSNs as XXXXXXXX/YYYYYYYY where:
XXXXXXXXis the high 32 bits (segment file number)YYYYYYYYis the low 32 bits (offset within segment)
§Example
use pgwire_replication::lsn::Lsn;
let lsn = Lsn::parse("16/B374D848").unwrap();
assert_eq!(lsn.to_string(), "16/B374D848");
// Or use FromStr
let lsn: Lsn = "16/B374D848".parse().unwrap();Tuple Fields§
§0: u64Implementations§
Trait Implementations§
impl Copy for Lsn
impl Eq for Lsn
Source§impl Ord for Lsn
impl Ord for Lsn
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for Lsn
impl PartialOrd for Lsn
impl StructuralPartialEq for Lsn
Auto Trait Implementations§
impl Freeze for Lsn
impl RefUnwindSafe for Lsn
impl Send for Lsn
impl Sync for Lsn
impl Unpin for Lsn
impl UnsafeUnpin for Lsn
impl UnwindSafe for Lsn
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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