Drizzled Public API Documentation

drizzled::plugin::XaRecover Class Reference
Inheritance diagram for drizzled::plugin::XaRecover:

Public Member Functions

 XaRecover (XID *trans_list_arg, int trans_len_arg, const XaResourceManager::commit_list_set &commit_list_arg, bool dry_run_arg)
 
int getForeignXIDs ()
 
int getMyXIDs ()
 
result_type operator() (argument_type resource_manager)
 

Private Attributes

int trans_len
 
int found_foreign_xids
 
int found_my_xids
 
bool result
 
XIDtrans_list
 
const XaResourceManager::commit_list_set & commit_list
 
bool dry_run
 

Detailed Description

recover() step of xa.

Note
there are three modes of operation:
  • automatic recover after a crash in this case commit_list.size() != 0, tc_heuristic_recover==0 all xids from commit_list are committed, others are rolled back
  • manual (heuristic) recover in this case commit_list.size()==0, tc_heuristic_recover != 0 DBA has explicitly specified that all prepared transactions should be committed (or rolled back).
  • no recovery (Drizzle did not detect a crash) in this case commit_list.size()==0, tc_heuristic_recover == 0 there should be no prepared transactions in this case.

Definition at line 69 of file xa_resource_manager.cc.


The documentation for this class was generated from the following file: