noisepage
noisepage copied to clipboard
Replace replica's TupleSlot mapping with block pointer mapping.
Feature Request
Summary
In the recovery manager, we store a TupleSlot (primary) -> TupleSlot (replica)
map. This is fine when you're doing recovery and expect the recovery manager to shut down. This is not so fine when you're using recovery to do replication, because recovery is long-lived and the mapping has to stick around.
Solution
A TupleSlot
is (block pointer, offset)
. It might be possible to only store a block pointer (primary) -> block pointer (replica)
map, which will only cost one entry per 1MB instead of one entry per TupleSlot
. But offsets are not necessarily the same, so be careful.