summaryrefslogtreecommitdiff
path: root/sql/temporary_tables.cc
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-10219 rpl.rpl_parallel_temptable failed in buildbot: Assertion `!table ↵Monty2016-06-221-4/+9
| | | | | | || !table->in_use || table->in_use == _current_thd()' failed Problem was that table->in_use was not properly set when dropping a temporary for the slave.
* MDEV-5535: Cannot reopen temporary tableNirbhay Choubey2016-06-101-0/+44
| | | | | | | | | | | | Temporary table being created by outer statement should not be visible to inner statement. And if inner statement creates a table with same name. The whole statement should fail with ER_TABLE_EXISTS_ERROR. Implemented by temporarily de-linking the TABLE_SHARE being created by outer statement so that it remains hidden to the inner statement.
* MDEV-5535: Cannot reopen temporary tableNirbhay Choubey2016-06-101-0/+1499
mysqld maintains a list of TABLE objects for all temporary tables created within a session in THD. Here each table is represented by a TABLE object. A query referencing a particular temporary table for more than once, however, failed with ER_CANT_REOPEN_TABLE error because a TABLE_SHARE was allocate together with the TABLE, so temporary tables always had only one TABLE per TABLE_SHARE. This patch lift this restriction by separating TABLE and TABLE_SHARE objects and storing TABLE_SHAREs for temporary tables in a list in THD, and TABLEs in a list within their respective TABLE_SHAREs.