rt.second.journal_segment_seq;
});
- auto replay_from = segments.rbegin()->second.journal_replay_lb;
+ auto replay_from = segments.rbegin()->second.journal_tail;
auto from = segments.begin();
if (replay_from != P_ADDR_NULL) {
from = std::find_if(
* Every segment contains and encode segment_header_t in the first block.
* Our strategy for finding the journal replay point is:
* 1) Find the segment with the highest journal_segment_seq
- * 2) Scan forward from committed_journal_lb to find the most recent
- * journal_commit_lb record
- * 3) Replay starting at the most recent found journal_commit_lb record
+ * 2) Replay starting at record located at that segment's journal_tail
*/
struct segment_header_t {
segment_seq_t journal_segment_seq;
segment_id_t physical_segment_id; // debugging
- paddr_t journal_replay_lb;
+ paddr_t journal_tail;
DENC(segment_header_t, v, p) {
DENC_START(1, 1, p);
denc(v.journal_segment_seq, p);
denc(v.physical_segment_id, p);
- denc(v.journal_replay_lb, p);
+ denc(v.journal_tail, p);
DENC_FINISH(p);
}
};