summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
authorRich Prohaska <prohaska@tokutek.com>2013-12-12 16:14:12 -0500
committerRich Prohaska <prohaska@tokutek.com>2013-12-12 16:14:12 -0500
commit5172855d16bcbcc42d224d429dc971f122aa2037 (patch)
tree0e462c606b4514056644aea122bb936458df2986 /storage
parent9ba363b4a4bc3c0186fd944ec0ae9845c6b869ae (diff)
downloadmariadb-git-5172855d16bcbcc42d224d429dc971f122aa2037.tar.gz
#150 cleanup cursor when a txn is retired
Diffstat (limited to 'storage')
-rw-r--r--storage/tokudb/ha_tokudb.cc1
-rw-r--r--storage/tokudb/hatoku_hton.cc1
2 files changed, 1 insertions, 1 deletions
diff --git a/storage/tokudb/ha_tokudb.cc b/storage/tokudb/ha_tokudb.cc
index 6219ee39f75..a09faee5f0e 100644
--- a/storage/tokudb/ha_tokudb.cc
+++ b/storage/tokudb/ha_tokudb.cc
@@ -8270,7 +8270,6 @@ void ha_tokudb::cleanup_txn(DB_TXN *txn) {
int r = cursor->c_close(cursor);
assert(r == 0);
cursor = NULL;
- remove_from_trx_handler_list();
}
}
diff --git a/storage/tokudb/hatoku_hton.cc b/storage/tokudb/hatoku_hton.cc
index 3f649f98115..49419153975 100644
--- a/storage/tokudb/hatoku_hton.cc
+++ b/storage/tokudb/hatoku_hton.cc
@@ -647,6 +647,7 @@ static void abort_txn_with_progress(DB_TXN* txn, THD* thd) {
static void tokudb_cleanup_handlers(tokudb_trx_data *trx, DB_TXN *txn) {
LIST *e;
while ((e = trx->handlers)) {
+ trx->handlers = list_delete(trx->handlers, e);
ha_tokudb *handler = (ha_tokudb *) e->data;
handler->cleanup_txn(txn);
}