Motr  M0
tx_group.c File Reference
#include "lib/trace.h"
#include "be/tx_group.h"
#include "lib/misc.h"
#include "lib/errno.h"
#include "lib/memory.h"
#include "be/tx_internal.h"
#include "be/domain.h"
#include "be/engine.h"
#include "be/addb2.h"
Include dependency graph for tx_group.c:

Go to the source code of this file.

Data Structures

struct  be_recovering_tx
 

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_BE
 

Functions

 M0_TL_DESCR_DEFINE (rtxs, "m0_be_tx_group::tg_txs_recovering", static, struct be_recovering_tx, rtx_link, rtx_magic, M0_BE_TX_MAGIC, M0_BE_TX_GROUP_MAGIC)
 
 M0_TL_DEFINE (rtxs, static, struct be_recovering_tx)
 
 M0_TL_DESCR_DEFINE (grp, "m0_be_tx_group::tg_txs", M0_INTERNAL, struct m0_be_tx, t_group_linkage, t_magic, M0_BE_TX_MAGIC, M0_BE_TX_GROUP_MAGIC)
 
 M0_TL_DEFINE (grp, M0_INTERNAL, struct m0_be_tx)
 
M0_INTERNAL void m0_be_tx_group_stable (struct m0_be_tx_group *gr)
 
M0_INTERNAL struct m0_sm_groupm0_be_tx_group__sm_group (struct m0_be_tx_group *gr)
 
M0_INTERNAL bool m0_be_tx_group_is_recovering (struct m0_be_tx_group *gr)
 
static void be_tx_group_reg_area_gather (struct m0_be_tx_group *gr)
 
static void be_tx_group_payload_gather (struct m0_be_tx_group *gr)
 
static void be_tx_group_deconstruct (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_close (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_reset (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_prepare (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL int m0_be_tx_group_init (struct m0_be_tx_group *gr, struct m0_be_tx_group_cfg *gr_cfg)
 
M0_INTERNAL bool m0_be_tx_group__invariant (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_fini (struct m0_be_tx_group *gr)
 
static void be_tx_group_tx_to_gr_map (const struct m0_be_tx *tx, const struct m0_be_tx_group *gr)
 
static void be_tx_group_tx_add (struct m0_be_tx_group *gr, struct m0_be_tx *tx)
 
M0_INTERNAL int m0_be_tx_group_tx_add (struct m0_be_tx_group *gr, struct m0_be_tx *tx)
 
M0_INTERNAL void m0_be_tx_group_tx_closed (struct m0_be_tx_group *gr, struct m0_be_tx *tx)
 
M0_INTERNAL void m0_be_tx_group_tx_del (struct m0_be_tx_group *gr, struct m0_be_tx *tx)
 
M0_INTERNAL size_t m0_be_tx_group_tx_nr (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_open (struct m0_be_tx_group *gr)
 
M0_INTERNAL int m0_be_tx_group_start (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_stop (struct m0_be_tx_group *gr)
 
M0_INTERNAL int m0_be_tx_group__allocate (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group__deallocate (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_seg_place_prepare (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_seg_place (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group_encode (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_log_write (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group__tx_state_post (struct m0_be_tx_group *gr, enum m0_be_tx_state state, bool del_tx_from_group)
 
M0_INTERNAL void m0_be_tx_group_recovery_prepare (struct m0_be_tx_group *gr, struct m0_be_log *log)
 
M0_INTERNAL void m0_be_tx_group_log_read (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL int m0_be_tx_group_decode (struct m0_be_tx_group *gr)
 
static void be_tx_group_reconstruct_reg_area (struct m0_be_tx_group *gr)
 
static struct be_recovering_txtx2tx_group_recovering_tx (struct m0_be_tx *tx)
 
static bool be_tx_group_recovering_tx_open (struct m0_clink *clink)
 
static void be_tx_group_recovering_gc (struct m0_be_tx *tx, void *param)
 
static void be_tx_group_reconstruct_transactions (struct m0_be_tx_group *gr, struct m0_sm_group *sm_grp)
 
M0_INTERNAL int m0_be_tx_group_reconstruct (struct m0_be_tx_group *gr, struct m0_sm_group *sm_grp)
 
M0_INTERNAL void m0_be_tx_group_reconstruct_tx_open (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group_reconstruct_tx_close (struct m0_be_tx_group *gr, struct m0_be_op *op_gc)
 
M0_INTERNAL int m0_be_tx_group_reapply (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group_discard (struct m0_be_log_discard *ld, struct m0_be_log_discard_item *ldi)
 
M0_INTERNAL void m0_be_tx_group_seg_io_credit (struct m0_be_tx_group_cfg *gr_cfg, struct m0_be_io_credit *io_cred)
 

Macro Definition Documentation

◆ M0_TRACE_SUBSYSTEM

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_BE

Definition at line 23 of file tx_group.c.