summaryrefslogtreecommitdiff
path: root/storage/innobase/trx/trx0sys.cc
diff options
context:
space:
mode:
Diffstat (limited to 'storage/innobase/trx/trx0sys.cc')
-rw-r--r--storage/innobase/trx/trx0sys.cc13
1 files changed, 7 insertions, 6 deletions
diff --git a/storage/innobase/trx/trx0sys.cc b/storage/innobase/trx/trx0sys.cc
index 724139461d3..bb29fb167b2 100644
--- a/storage/innobase/trx/trx0sys.cc
+++ b/storage/innobase/trx/trx0sys.cc
@@ -1086,13 +1086,14 @@ trx_sys_close(void)
" shutdown: " << size << " read views open";
}
- sess_close(trx_dummy_sess);
- trx_dummy_sess = NULL;
-
- trx_purge_sys_close();
+ if (trx_dummy_sess) {
+ sess_close(trx_dummy_sess);
+ trx_dummy_sess = NULL;
+ }
- /* Free the double write data structures. */
- buf_dblwr_free();
+ if (purge_sys) {
+ trx_purge_sys_close();
+ }
/* Only prepared transactions may be left in the system. Free them. */
ut_a(UT_LIST_GET_LEN(trx_sys->rw_trx_list) == trx_sys->n_prepared_trx);