[MDEV-12219] Discard temporary undo logs at transaction commit Created: 2017-03-09  Updated: 2017-03-18  Resolved: 2017-03-13

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - InnoDB
Affects Version/s: None
Fix Version/s: 10.2.5

Type: Bug Priority: Major
Reporter: Marko Mäkelä Assignee: Marko Mäkelä
Resolution: Fixed Votes: 0
Labels: performance, temporary, transactions

Issue Links:
Blocks
blocks MDEV-12226 Avoid writes of freed (garbage) pages... Closed
Relates
relates to MDEV-12258 InnoDB: Fix the bogus debug assertion... Closed

 Description   

Starting with MySQL 5.7, temporary tables in InnoDB are handled differently from persistent tables. Because temporary tables are private to a connection, concurrency control and multi-versioning (MVCC) are not applicable. For performance reasons, purge is disabled as well. Rollback is supported for temporary tables.

Because MVCC and purge are disabled for temporary tables, we should discard all temporary undo logs already at transaction commit, just like we discard the persistent insert_undo logs. Currently, update_undo logs are being preserved.



 Comments   
Comment by Marko Mäkelä [ 2017-03-10 ]

bb-10.2-marko

Comment by Jan Lindström (Inactive) [ 2017-03-13 ]

Ok to push after you have added comments on places where I had questions.

Generated at Thu Feb 08 07:56:02 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.