1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

fixed QC invaluidation and processing with view (BUG#8050) (BUG#8054)

mysql-test/r/view_query_cache.result:
  Fixed test to be environment independ
  Invalidation of view checked
  Join view with QC checked
mysql-test/t/view_query_cache.test:
  Fixed test to be environment independ
  Invalidation of view checked
  Join view with QC checked
sql/sql_cache.cc:
  support of VIEW added to QC
sql/sql_cache.h:
  support of VIEW added to QC
sql/sql_view.cc:
  invalidation of QC added to altering/droping VIEW commands
This commit is contained in:
unknown
2005-01-27 14:21:37 +02:00
parent fdb6225390
commit 2d717b5d94
5 changed files with 220 additions and 74 deletions

View File

@@ -305,6 +305,8 @@ bool mysql_create_view(THD *thd,
VOID(pthread_mutex_lock(&LOCK_open));
res= mysql_register_view(thd, view, mode);
VOID(pthread_mutex_unlock(&LOCK_open));
if (view->revision != 1)
query_cache_invalidate3(thd, view, 0);
start_waiting_global_read_lock(thd);
if (res)
goto err;
@@ -912,6 +914,7 @@ bool mysql_drop_view(THD *thd, TABLE_LIST *views, enum_drop_mode drop_mode)
}
if (my_delete(path, MYF(MY_WME)))
goto err;
query_cache_invalidate3(thd, view, 0);
VOID(pthread_mutex_unlock(&LOCK_open));
}
send_ok(thd);