Motr
M0
|
#include <log.h>
Data Fields | |
struct m0_be_log * | lgr_log |
int | lgr_state |
bool | lgr_need_discard |
m0_bindex_t | lgr_last_discarded |
m0_bindex_t | lgr_position |
m0_bcount_t | lgr_size |
m0_bindex_t | lgr_prev_pos |
m0_bcount_t | lgr_prev_size |
m0_bindex_t | lgr_log_header_discarded |
uint64_t | lgr_magic |
struct m0_tlink | lgr_linkage |
struct m0_tlink | lgr_sched_linkage |
int | lgr_io_nr |
struct m0_be_log_io * | lgr_io [M0_BE_LOG_RECORD_IO_NR_MAX] |
struct m0_be_op * | lgr_op [M0_BE_LOG_RECORD_IO_NR_MAX] |
struct m0_be_op | lgr_record_op |
struct m0_be_op * | lgr_user_op |
struct m0_be_fmt_log_record_header | lgr_header |
struct m0_be_fmt_log_record_footer | lgr_footer |
bool | lgr_write_header |
struct m0_be_fmt_log_record_footer lgr_footer |
struct m0_be_fmt_log_record_header lgr_header |
struct m0_be_log_io* lgr_io[M0_BE_LOG_RECORD_IO_NR_MAX] |
m0_bindex_t lgr_last_discarded |
m0_bindex_t lgr_log_header_discarded |
It MUST be set to a log pointer for which all log records with lgr_position less than the pointer have already became persistent.
It's set to BE log header flh_discarded pointer at the time when m0_be_log_record_io_prepare() is executed for this record.
Use case: discard FOL records (sent as FDMI records) at FDMI plugin. This value allows to filter out FDMI records that are never going to be resent because BE log records before this pointer are never going to be recovered (they are already fully written to BE segments and BE log header is updated to reflect that).
bool lgr_need_discard |
struct m0_be_op* lgr_op[M0_BE_LOG_RECORD_IO_NR_MAX] |
m0_bindex_t lgr_position |
m0_bindex_t lgr_prev_pos |
m0_bcount_t lgr_prev_size |
m0_bcount_t lgr_size |
struct m0_be_op* lgr_user_op |