Skip to content

Commit 91c7767

Browse files
VladLazarconradludgate
authored andcommitted
backend: pack next record LSN into the encoded message (#33)
This field only needs to be read after the batch is decoded, so we can move into the body to get more efficient encoding.
1 parent c021dbb commit 91c7767

File tree

1 file changed

+0
-11
lines changed

1 file changed

+0
-11
lines changed

postgres-protocol/src/message/backend.rs

-11
Original file line numberDiff line numberDiff line change
@@ -375,15 +375,10 @@ impl ReplicationMessage<Bytes> {
375375
INTERPRETED_WAL_RECORD_TAG => {
376376
let streaming_lsn = buf.read_u64::<BigEndian>()?;
377377
let commit_lsn = buf.read_u64::<BigEndian>()?;
378-
let next_record_lsn = match buf.read_u64::<BigEndian>()? {
379-
0 => None,
380-
lsn => Some(lsn),
381-
};
382378

383379
ReplicationMessage::RawInterpretedWalRecords(RawInterpretedWalRecordsBody {
384380
streaming_lsn,
385381
commit_lsn,
386-
next_record_lsn,
387382
data: buf.read_all(),
388383
})
389384
}
@@ -976,7 +971,6 @@ impl<D> XLogDataBody<D> {
976971
pub struct RawInterpretedWalRecordsBody<D> {
977972
streaming_lsn: u64,
978973
commit_lsn: u64,
979-
next_record_lsn: Option<u64>,
980974
data: D,
981975
}
982976

@@ -991,11 +985,6 @@ impl<D> RawInterpretedWalRecordsBody<D> {
991985
self.commit_lsn
992986
}
993987

994-
#[inline]
995-
pub fn next_record_lsn(&self) -> Option<u64> {
996-
self.next_record_lsn
997-
}
998-
999988
#[inline]
1000989
pub fn data(&self) -> &D {
1001990
&self.data

0 commit comments

Comments
 (0)