Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
pageserver: lift decoding and interpreting of wal into wal_decoder (#…
…9524) ## Problem Decoding and ingestion are still coupled in `pageserver::WalIngest`. ## Summary of changes A new type is added to `wal_decoder::models`, InterpretedWalRecord. This type contains everything that the pageserver requires in order to ingest a WAL record. The highlights are the `metadata_record` which is an optional special record type to be handled and `blocks` which stores key, value pairs to be persisted to storage. This type is produced by `wal_decoder::models::InterpretedWalRecord::from_bytes` from a raw PG wal record. The rest of this commit separates decoding and interpretation of the PG WAL record from its application in `WalIngest::ingest_record`. Related: #9335 Epic: #9329
- Loading branch information
411c3aa
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
5416 tests run: 5184 passed, 0 failed, 232 skipped (full report)
Code coverage* (full report)
functions
:31.5% (7768 of 24686 functions)
lines
:49.0% (61023 of 124649 lines)
* collected from Rust tests only
411c3aa at 2024-10-31T12:11:36.444Z :recycle: