Bug #29512 Query cache not invalidated when Falcon tablespace overwritten
Submitted: 3 Jul 2007 13:26 Modified: 11 Aug 2007 21:48
Reporter: Robin Schumacher Email Updates:
Status: No Feedback Impact on me:
None 
Category:MySQL Server: Falcon storage engine Severity:S2 (Serious)
Version:6.0 OS:Any
Assigned to: Assigned Account CPU Architecture:Any

[3 Jul 2007 13:26] Robin Schumacher
Description:
Create tablespace with unique name but using same datafile as existing tablespace 
results in re-initialization of tablespace and loss of objects, however Query Cache is not notified of object loss.   

How to repeat:
mysql> create tablespace rmstest4
    -> add datafile 'c:/dev/rmstest.fts'
    -> engine=falcon;
Query OK, 0 rows affected (0.19 sec)

*** objects are now gone from tablespace ***

mysql> select count(*) from t1; <---- object that was in tablespace; still in QC
+----------+
| count(*) |
+----------+
|   952425 |
+----------+
1 row in set (0.00 sec)

mysql> desc t1;
+----------------------------+---------------+------+-----+---------+-------+
| Field                      | Type          | Null | Key | Default | Extra |
+----------------------------+---------------+------+-----+---------+-------+
| client_transaction_id      | decimal(22,0) | NO   |     |         |       |
| client_id                  | decimal(22,0) | NO   |     |         |       |
| investment_id              | decimal(22,0) | NO   |     |         |       |
| action                     | varchar(10)   | NO   |     |         |       |
| price                      | decimal(12,2) | NO   |     |         |       |
| number_of_units            | decimal(22,0) | NO   |     |         |       |
| transaction_status         | varchar(10)   | NO   |     |         |       |
| transaction_sub_timestamp  | datetime      | NO   |     |         |       |
| transaction_comp_timestamp | datetime      | NO   |     |         |       |
| description                | varchar(200)  | YES  |     | NULL    |       |
| broker_id                  | decimal(22,0) | YES  |     | NULL    |       |
| broker_commission          | decimal(10,2) | YES  |     | NULL    |       |
+----------------------------+---------------+------+-----+---------+-------+
12 rows in set (0.06 sec)

mysql> insert into t1 select * from client_transaction;
CRASH
[10 Jul 2007 17:30] MySQL Verification Team
Thank you for the bug report. Could you please clarify me if the below
steps are correct to repeat the issue reported:

- Create a tablespace:

mysql> create tablespace db8tsp
    -> add datafile 'c:/dev/falcon/db8data.fts'
    -> engine=Falcon;
Query OK, 0 rows affected (0.19 sec)

- Create a table and populate it:

mysql> create table tb8 (id serial) engine=Falcon tablespace db8tsp;
Query OK, 0 rows affected (0.11 sec)

- Be sure QC is enabled:

mysql> show variables like "query_cache_size";
+------------------+----------+
| Variable_name    | Value    |
+------------------+----------+
| query_cache_size | 18874368 |
+------------------+----------+
1 row in set (0.00 sec)

- Query the table to keep the result in QC.

- Create a new tablespace but with the same datafile as before
  created tablespace.

 With current source server I can't do this due:

mysql> create tablespace db8atsp
    -> add datafile 'c:/dev/falcon/db8data.fts'
    -> engine=Falcon;
ERROR 65433 (HY000): Unknown error -103

Thanks in advance.
[11 Aug 2007 23:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".