Bug #22199 When dropping a database, falcon complains about deleting .ndb file that was nev
Submitted: 9 Sep 2006 15:12 Modified: 3 Dec 2007 14:11
Reporter: Georg Richter Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Falcon storage engine Severity:S3 (Non-critical)
Version:5.2 OS:Linux (Linux)
Assigned to: CPU Architecture:Any

[9 Sep 2006 15:12] Georg Richter
Description:
If you create a database with falcon-enabled mysqld, then drop it without ever having created falcon tables, the server complains that there isn't a falcon .ndb tablespace file to delete.

How to repeat:
mysql> create database sbtest;
Query OK, 1 row affected (0.00 sec)

mysql> drop database sbtest;
database open failed: can't open file "/home/patg/mysql-build/mysql-5.1-falcon/mysql-test/var/master-data/sbtest.ndb": No such file or directory (2)
Query OK, 0 rows affected (0.00 sec)
[5 Feb 2007 20:08] Mark Leith
This also happens on creating the first falcon table within a database:

mysql> create table t1 (i int) engine = falcon;
database open failed: can't open file "/usr/local/mysql-falcon/var/test.fts": No such file or directory (2)
Query OK, 0 rows affected (0.76 sec)

And verified on the drop of a database with no falcon tables within it:

mysql> drop database foo;
database open failed: can't open file "/usr/local/mysql-falcon/var/foo.fts": No such file or directory (2)
Query OK, 0 rows affected (0.00 sec)

These errors are certainly misleading, and could result in unnecessary support calls. Perhaps we could simply add an "informational" print to the error log saying that the tablespace file was not found, and is being created (such as InnoDB currently does.
[30 Aug 2007 17:30] Kevin Lewis
This seems to be fixed.
George or Mark,  can you verify that this no longer occurs?
[1 Dec 2007 13:22] Hakan Küçükyılmaz
Fixed in 6.0.4
[3 Dec 2007 14:11] MC Brown
A note has been added to the 6.0.4 changelog: 

Creating a new table or dropping a database on a newly created database or tablespace where the Falcon engine was used would raise an error.