1
0
mirror of https://github.com/codership/wsrep-lib.git synced 2025-07-30 07:23:07 +03:00
Commit Graph

12 Commits

Author SHA1 Message Date
4225ee526b The changes:
* Removed WITH_WSREP_SR_SPEEDUP_REPLAY and DEBUG_SR_SPEEDUP_REPLAY
 * Added "--wsrep_SR_store=undolog" for enabling SR speedup
 * Modified MTR tests "galera_sr.GCF-572" and
   "galera_sr.galera_sr_cc_master"
 * Improved the code that removes unneeded fragments from
   binlog_fragment_cache.

Now all galera_sr tests succeed when SR speedup is disabled
and most galera_sr MTR tests succeed when SR speedup up is enabled.
The failing tests are listed in "skipped_tests" file.

The following MTR test suite run succeeds:

(cd mysql-test; ./mysql-test-run.pl --mysqld="--wsrep_SR_store=undolog"
                 --suite=galera_sr --skip-test-list=../skipped_tests --force)
2021-05-10 13:54:41 +03:00
3909de3d67 The changes:
* merged most of Seppo's changes by hand
 * enabled the replay of SR speedup feature
 * changed how binlog_cache is retrieved for SR speedup
 * moved set_fragments_from_table() to
   Wsrep_schema::recover_sr_transactions()
 * improved handling the "wsrep_is_sr" flags

Several MTR tests still fail, for example galera_sr.GCF-900
2021-03-08 18:58:02 +02:00
c487d11f86 Changes:
1) Add initialization for trx->xid in InnoDB trx pool

2) Add server UUID in the XID of InnoDB SR transactions

3) Modify trx_recover_for_mysql_callback() so that recovered InnoDB SR
transactions are not made visible to MySQL as recovered XA transactions.

4) Modify how SR transactions are detected and the wsrep_is_sr flag is
set for InnoDB SR transactions.
2021-02-23 18:52:40 +02:00
a866ce7107 The initial version of the SR speedup feature.
This version contains many debug messages and does not work very well.
2021-02-05 18:52:50 +02:00
66ee7bed1b Add type wsrep::xid
Create type `wsrep::xid`, and change all signatures that take
`std::string xid` to take `wsrep::xid xid`.
2019-10-18 09:36:18 +02:00
052247144f Support recovery of XA transactions
* Add method `restore_prepared_transaction` to `client_state` class
  which restores a transaction state from storage given its xid.
* Add method `commit_or_rollback_by_xid` to terminate prepared XA
  transactions by xid.
* Make sure that transactions in prepared state are not rolled back
  when their master fails/partitions away.
2019-10-16 10:16:39 +02:00
c0c977f9ab Added GPLv2 licence and copyright headers. 2018-10-15 15:14:22 +03:00
61e0e30687 Remove fragments in before rollback for streaming transactions
which got BF aborted in total order.
2018-07-19 13:52:12 +03:00
4cfb9b6413 Introduced adopt_transaction() for storage_service interface
A SR transaction must be adopted by a storage service instance
running in background rollbacker thread while it is aborting a
SR transaction.
2018-07-13 15:36:27 +03:00
7c424d8337 Fixes to local streaming replication processing. 2018-07-08 15:27:49 +03:00
2913aecebd Pass transaction id instead of client id to storage service append_fragment() 2018-07-07 21:34:58 +03:00
2ac13100f7 Refactored storage service out of client service interface. 2018-07-07 18:06:37 +03:00