Bug #33720 Falcon allows FALCON_TEMPORARY to be manually specified as a tablespace
Submitted: 7 Jan 2008 11:43 Modified: 15 May 2009 13:07
Reporter: Philip Stoev Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Falcon storage engine Severity:S3 (Non-critical)
Version:6.0.4-p2 OS:Any
Assigned to: Sergey Vojtovich CPU Architecture:Any
Tags: F_TABLESPACE
Triage: Triaged: D4 (Minor) / R2 (Low) / E2 (Low)

[7 Jan 2008 11:43] Philip Stoev
Description:
The FALCON_TEMPORARY tablespace can be manually specified in a CREATE TABLE and the table creation will succeed. I am filing this as bug because I am not sure if this is intended and if there is no opportunity for a mixup or other bad behavoir (e.g. user 1 stealing data from user 2's temporary tables), especially since the autogenerated table names used by the geniune CREATE TEMPORARY are easily predictable.

How to repeat:
mysql> create table t12 (f1 integer) engine=falcon tablespace FALCON_TEMPORARY;
Query OK, 0 rows affected (0.01 sec)

Suggested fix:
Please decide if the falcon_temporary tablespace should be protected against CREATE TABLE without a TEMPORARY modifier.
[7 Jan 2008 15:27] Godofredo Miguel Solorzano
Thank you for the bug report.
[7 Jan 2008 18:28] Kevin Lewis
Ann, Can you determine if the temporary database should be excluded from CREATE TABLE without a TEMPORARY modifier?
[7 Jan 2008 18:58] Ann Harrison
Falcon should not allow users to create tables in the temporary 
table space.  On server startup, Falcon deletes and recreates the
FALCON_TEMPORARY, with catastrophic results for any date intended
to be persistent that happens to be there.

We should disallow creating tables in FALCON_TEMPORARY.
[15 Dec 2008 23:59] Kevin Lewis
Sergey, Please take a look at this.
[19 Dec 2008 11:05] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/62073

2948 Sergey Vojtovich	2008-12-19
      BUG#33720 - Falcon allows FALCON_TEMPORARY to be manually
                  specified as a tablespace
      
      It was possible to create non-temporary table in
      FALCON_TEMPORARY tablespace.
      
      When creating a table, do not accept FALCON_TEMPORARY
      tablespace for regular tables.
[19 Dec 2008 11:49] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/62081

2948 Sergey Vojtovich	2008-12-19
      BUG#33720 - Falcon allows FALCON_TEMPORARY to be manually
                  specified as a tablespace
      
      It was possible to create non-temporary table in
      FALCON_TEMPORARY tablespace.
      
      When creating a table, do not accept FALCON_TEMPORARY
      tablespace for regular tables.
[19 Dec 2008 16:37] Kevin Lewis
OK to push
[13 Feb 2009 7:24] Bugs System
Pushed into 6.0.10-alpha (revid:alik@sun.com-20090211182317-uagkyj01fk30p1f8) (version source revid:svoj@mysql.com-20081222085303-n1482miumb059jmh) (merge vers: 6.0.9-alpha) (pib:6)
[15 May 2009 13:07] MC Brown
An entry has been added to the 6.0.10 changelog: 

Falcon would allow you to explicitly create a table within the internal FALCON_TEMPORARY tablespace. You can no longer explicitly select the FALCON_TEMPORARY tablespace.