Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 10.0.8
-
Fix Version/s: 10.0.10
-
Component/s: None
-
Labels:None
Description
After CREATE OR REPLACE implementation the test create-big now fails.
Before CREATE OR REPLACE, a create .... select that tried to create an existing table, failed in mysql_execute_command():
res= open_and_lock_tables(thd, lex->query_tables, TRUE, 0);
if (res)
{
/* Got error or warning. Set res to 1 if error */
if (!(res= thd->is_error()))
my_ok(thd);
}
else
{
/* The table already exists */
if (create_table->table)
{
if (create_info.options & HA_LEX_CREATE_IF_NOT_EXISTS)
{
push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_NOTE,
ER_TABLE_EXISTS_ERROR,
ER(ER_TABLE_EXISTS_ERROR),
create_info.alias);
my_ok(thd);
}
else
{
my_error(ER_TABLE_EXISTS_ERROR, MYF(0), create_info.alias);
res= 1;
}
goto end_with_restore_list;
}
Now this if (create_table->table block is removed, so the failure happens much later. As a result, the test fails.
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
The test failed with:
+Warning 1639 debug sync point wait timed out
The issue was that create...trigger part of the test suite used a debug_sync point that before was never triggered (in other words, wrong meaningless test).
Now the debug sync point is triggered and the test case could not handled that.
I fixed this by adding a wait and go for debug the debug syncpoint in the test.