[MDEV-12776] Do not create the InnoDB temporary tablespace in innodb_read_only mode Created: 2017-05-10  Updated: 2017-05-10  Resolved: 2017-05-10

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

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

Issue Links:
Relates
relates to MDEV-12367 Upgrade from previous versions to 10.... Closed

 Description   

The InnoDB temporary tablespace is only usable if innodb_read_only=OFF. It is useless to create the tablespace in read-only mode, because CREATE TEMPORARY TABLE is disallowed if innodb_read_only, and nothing can we written to the temporary tablespace if no temporary tables can be created.

(Note that in MySQL 5.7, optimizer-internal temporary tables might still use the InnoDB temporary tablespace even if innodb_read_only. In MariaDB the optimizer does not use InnoDB for its temporary tables, and MDEV-11487 removed the related InnoDB code.)



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

bb-10.2-marko
Note the change to the result of the test innodb.temporary_table, demonstrating that the temporary tablespace file will not be created if innodb_read_only=ON.
That test already proves that CREATE TEMPORARY TABLE is refused if innodb_read_only.

Comment by Jan Lindström (Inactive) [ 2017-05-10 ]

Ok to push.

Generated at Thu Feb 08 08:00:23 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.