diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2019-01-14 11:37:51 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2019-01-14 11:37:51 +0200 |
commit | 248dc12e60d5e3ba269fe2a13689bca32790f9f5 (patch) | |
tree | 81387df3737a081fd0ba855d8275d7aab2283e40 /storage | |
parent | f5ee7fb31f25c88113bdd688d8764a9eaed339bc (diff) | |
parent | 7372fe4da195f465a2f13984dcd89325ec361c43 (diff) | |
download | mariadb-git-248dc12e60d5e3ba269fe2a13689bca32790f9f5.tar.gz |
Merge 10.1 into 10.2
Diffstat (limited to 'storage')
-rw-r--r-- | storage/innobase/trx/trx0trx.cc | 6 | ||||
-rw-r--r-- | storage/xtradb/trx/trx0trx.cc | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/storage/innobase/trx/trx0trx.cc b/storage/innobase/trx/trx0trx.cc index 93fc1bb0ed2..704c52ff9af 100644 --- a/storage/innobase/trx/trx0trx.cc +++ b/storage/innobase/trx/trx0trx.cc @@ -2738,6 +2738,12 @@ trx_get_trx_by_xid_low( && trx_state_eq(trx, TRX_STATE_PREPARED) && xid->eq((XID*)trx->xid)) { +#ifdef WITH_WSREP + /* The commit of a prepared recovered Galera + transaction needs a valid trx->xid for + invoking trx_sys_update_wsrep_checkpoint(). */ + if (wsrep_is_wsrep_xid(trx->xid)) break; +#endif /* Invalidate the XID, so that subsequent calls will not find it. */ trx->xid->null(); diff --git a/storage/xtradb/trx/trx0trx.cc b/storage/xtradb/trx/trx0trx.cc index 6a033fbeb09..17cba81daf3 100644 --- a/storage/xtradb/trx/trx0trx.cc +++ b/storage/xtradb/trx/trx0trx.cc @@ -2578,6 +2578,12 @@ trx_get_trx_by_xid_low( && memcmp(xid->data, trx->xid.data, xid->gtrid_length + xid->bqual_length) == 0) { +#ifdef WITH_WSREP + /* The commit of a prepared recovered Galera + transaction needs a valid trx->xid for + invoking trx_sys_update_wsrep_checkpoint(). */ + if (wsrep_is_wsrep_xid(&trx->xid)) break; +#endif /* Invalidate the XID, so that subsequent calls will not find it. */ trx->xid.null(); |