54 lines
2.0 KiB
Plaintext
54 lines
2.0 KiB
Plaintext
###############################################################################
|
|
# #
|
|
# Debug Test cases to verify storing view column information in DD.COLUMNS #
|
|
# table and update view column information and other values on DDL #
|
|
# operations. #
|
|
# #
|
|
###############################################################################
|
|
|
|
--source include/have_debug.inc
|
|
--source include/have_debug_sync.inc
|
|
|
|
--source include/count_sessions.inc
|
|
|
|
--enable_connect_log
|
|
|
|
--echo #
|
|
--echo # Bug#26322203 - SHOW FIELDS FROM A VALID VIEW FAILS WITH AN INVALID VIEW ERROR
|
|
--echo #
|
|
|
|
CREATE TABLE t1 (f1 int);
|
|
CREATE VIEW v1 AS SELECT * FROM t1;
|
|
|
|
--echo # Wait after listing view "v1" referencing table "t1" for state update.
|
|
SET DEBUG_SYNC="after_preparing_view_tables_list SIGNAL alter_view WAIT_FOR go";
|
|
--send DROP TABLE t1;
|
|
|
|
connect (con1, localhost, root,,);
|
|
SET DEBUG_SYNC='now WAIT_FOR alter_view';
|
|
--echo # Before state of the view v1 is updated ALTER view so that v1 is no more
|
|
--echo # dependent on the table t1 being dropped.
|
|
ALTER VIEW v1 AS select 13;
|
|
SET DEBUG_SYNC='now SIGNAL go';
|
|
|
|
connection default;
|
|
--echo # Without fix even if v1 is not dependent table/view or stored function
|
|
--echo # being dropped because of concurrent DDL operation on the view v1, state
|
|
--echo # of the view is updated as invalid.
|
|
--echo #
|
|
--echo # With fix, while updating view state if view is no more dependent on
|
|
--echo # the object being dropped then view state is *not* updated.
|
|
--reap
|
|
FLUSH TABLES;
|
|
--echo # Without fix, SHOW FIELDS from valid view "v1" reports invalid view error.
|
|
SHOW FIELDS FROM v1;
|
|
|
|
connection default;
|
|
SET DEBUG_SYNC='RESET';
|
|
DROP VIEW v1;
|
|
disconnect con1;
|
|
--disable_connect_log
|
|
|
|
--source include/wait_until_count_sessions.inc
|
|
###########################################################################
|