Fix glass freelist bug with cancel_transaction()
commitaa9ad6d9e586da13c18d79dacb0aa1aa66c3be80
authorOlly Betts <olly@survex.com>
Tue, 20 Mar 2018 03:18:17 +0000 (20 16:18 +1300)
committerOlly Betts <olly@survex.com>
Tue, 20 Mar 2018 03:23:57 +0000 (20 16:23 +1300)
tree82caad31c2186464e4a17e9d037b1d6a77038726
parent08cfe8a579c4b1574e513aa3c9aefd5091943f1e
Fix glass freelist bug with cancel_transaction()

When cancel_transaction() was called with glass, the freelist wasn't
reset to how it was before the transaction, resulting in leaked blocks.
This was largely harmless, except that it was detected by
Database::check() and caused an error.
xapian-core/backends/glass/glass_table.cc
xapian-core/tests/api_transdb.cc