Bug #31114 falcon : creating tablespace with same name twice returns Unknown error -103
Submitted: 20 Sep 2007 15:05 Modified: 15 Nov 2007 7:22
Reporter: Peter Horneber Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Falcon storage engine Severity:S3 (Non-critical)
Version:6.02-alpha OS:Linux (xubuntu 7.03)
Assigned to: Sergey Vojtovich CPU Architecture:Any

[20 Sep 2007 15:05] Peter Horneber
Description:
creating tablespace with same name twice returns Unknown error -103

It should say "The same tablespace already exists"
But it returns Unkown error.

How to repeat:
mysql> create tablespace ftbs2
    ->      add datafile 'ftbs2.dat'
    ->     engine falcon;
Query OK, 0 rows affected (6.03 sec)

mysql> 
mysql> 
mysql> create tablespace ftbs2      add datafile 'ftbs2.dat'     engine falcon;
ERROR 65433 (HY000): Unknown error -103
mysql> 

Suggested fix:

The code where SQLError is thrown is..

Statement::createTableSpace(Syntax *syntax)

        if (tableSpace)
                {
                if (syntax->type == nod_create_tablespace)
                        throw SQLError(DDL_ERROR, "tablespace \"%s\" already exists", name);

falcon SQLError should be catched and transformed to mysql error at handlerton->alter_tablespace or
StorageInterface::createTablespace 

mysql_execute_command
 case SQLCOM_ALTER_TABLESPACE:
  check_access
  mysql_alter_tablespace ( sql_tablespace.cc )
   handlerton->alter_tablespace
    StorageInterface::alter_tablespace ( ha_falcon.cpp )
     storageHandler->createTablespace
      StorageInterface::createTablespace
[20 Sep 2007 16:26] MySQL Verification Team
Thank you for the bug report.

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 6.0.3-alpha-debug Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> create tablespace ftbs2
    -> add datafile 'ftbs2.dat'
    -> engine falcon;
Query OK, 0 rows affected (0.04 sec)

mysql> create tablespace ftbs2      add datafile 'ftbs2.dat'     engine falcon;
ERROR 65433 (HY000): Unknown error -103
mysql>
[31 Oct 2007 8:40] 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/36730

ChangeSet@1.2650, 2007-10-31 11:43:10+04:00, svoj@mysql.com +10 -0
  BUG#31114 - falcon : creating tablespace with same name twice returns
              Unknown error -103
  
  When creating a tablespace that already exists, falcon returns
  non-informative error message.
[1 Nov 2007 8:50] 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/36825

ChangeSet@1.2652, 2007-11-01 11:52:19+04:00, svoj@mysql.com +10 -0
  BUG#31114 - falcon : creating tablespace with same name twice returns
              Unknown error -103
  
  When creating a tablespace that already exists, falcon returns
  non-informative error message.
[13 Nov 2007 9:55] 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/37649

ChangeSet@1.2671, 2007-11-13 13:56:56+04:00, svoj@mysql.com +10 -0
  BUG#31114 - falcon : creating tablespace with same name twice returns
              Unknown error -103
  
  When creating a tablespace that already exists, falcon returns
  non-informative error message.
[14 Nov 2007 9:41] Bugs System
Pushed into 6.0.4-alpha
[15 Nov 2007 7:22] MC Brown
A note has been added to the 6.0.4 changelog: 

When creating a TABLESPACE that uses the same name as an existing TABLESPACE, Falcon would return Unknown error -103. MySQL will now return an error stating that the specified tablespace already exists.
[30 Nov 2007 20:43] Bugs System
Pushed into 6.0.4-alpha