diff options
Diffstat (limited to 'storage/innobase/trx/trx0sys.cc')
-rw-r--r-- | storage/innobase/trx/trx0sys.cc | 13 |
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); |