#At file:///home/jonas/src/telco-7.1/ based on revid:jonas@stripped
3494 Jonas Oreland 2010-03-12 [merge]
ndb - post merge 5.1.44 fixes into 7.1
modified:
mysql-test/suite/rpl/t/disabled.def
mysql-test/suite/rpl_ndb/t/disabled.def
sql/sql_yacc.yy
=== modified file 'mysql-test/suite/rpl/t/disabled.def'
--- a/mysql-test/suite/rpl/t/disabled.def 2010-03-12 10:36:52 +0000
+++ b/mysql-test/suite/rpl/t/disabled.def 2010-03-12 13:57:24 +0000
@@ -11,4 +11,5 @@
##############################################################################
rpl_row_create_table : Bug#45576 2009-12-01 joro rpl_row_create_table fails on PB2
-rpl_geometry : bug#
+rpl_geometry : bug#51996
+
=== modified file 'mysql-test/suite/rpl_ndb/t/disabled.def'
--- a/mysql-test/suite/rpl_ndb/t/disabled.def 2010-03-12 10:36:52 +0000
+++ b/mysql-test/suite/rpl_ndb/t/disabled.def 2010-03-12 13:57:24 +0000
@@ -10,5 +10,5 @@
#
##############################################################################
-rpl_ndb_ctype_ucs2_def : bug #34661 rpl_ndb_ctype_ucs2_def fails in cge-6.3
-rpl_ndb_set_null : bug #
+rpl_ndb_ctype_ucs2_def : bug #34661 rpl_ndb_ctype_ucs2_def fails in 6.2
+rpl_ndb_set_null : bug #51100
=== modified file 'sql/sql_yacc.yy'
--- a/sql/sql_yacc.yy 2010-03-12 10:36:52 +0000
+++ b/sql/sql_yacc.yy 2010-03-12 13:57:24 +0000
@@ -600,7 +600,7 @@ Item* handle_sql2003_note184_exception(T
}
-static bool add_create_index_prepare (LEX *lex, Table_ident *table)
+static bool add_create_index_prepare (LEX *lex, Table_ident *table, enum ha_build_method method)
{
lex->sql_command= SQLCOM_CREATE_INDEX;
if (!lex->current_select->add_table_to_list(lex->thd, table, NULL,
@@ -608,6 +608,7 @@ static bool add_create_index_prepare (LE
return TRUE;
lex->alter_info.reset();
lex->alter_info.flags= ALTER_ADD_INDEX;
+ lex->alter_info.build_method= method;
lex->col_list.empty();
lex->change= NullS;
return FALSE;
@@ -1936,98 +1937,37 @@ create:
$5->table.str);
}
}
- | CREATE build_method opt_unique INDEX_SYM ident key_alg
- ON table_ident
- {
- LEX *lex=Lex;
- lex->sql_command= SQLCOM_CREATE_INDEX;
- if (!lex->current_select->add_table_to_list(lex->thd, $8,
- NULL,
- TL_OPTION_UPDATING))
- MYSQL_YYABORT;
- lex->alter_info.reset();
- lex->alter_info.flags= ALTER_ADD_INDEX;
- lex->alter_info.build_method= $2;
- lex->col_list.empty();
- lex->change=NullS;
+ | CREATE build_method opt_unique INDEX_SYM ident key_alg ON table_ident
+ {
+ if (add_create_index_prepare(Lex, $8, $2))
+ MYSQL_YYABORT;
}
'(' key_list ')' normal_key_options
{
- LEX *lex=Lex;
- Key *key;
- if ($3 != Key::FULLTEXT && lex->key_create_info.parser_name.str)
- {
- my_parse_error(ER(ER_SYNTAX_ERROR));
- MYSQL_YYABORT;
- }
- key= new Key($3, $5.str, &lex->key_create_info, 0,
- lex->col_list);
- if (key == NULL)
+ if (add_create_index(Lex, $3, $5.str))
MYSQL_YYABORT;
- lex->alter_info.key_list.push_back(key);
- lex->col_list.empty();
}
- | CREATE build_method fulltext INDEX_SYM ident key_alg
- ON table_ident
- {
- LEX *lex=Lex;
- lex->sql_command= SQLCOM_CREATE_INDEX;
- if (!lex->current_select->add_table_to_list(lex->thd, $8,
- NULL,
- TL_OPTION_UPDATING))
- MYSQL_YYABORT;
- lex->alter_info.reset();
- lex->alter_info.flags= ALTER_ADD_INDEX;
- lex->alter_info.build_method= $2;
- lex->col_list.empty();
- lex->change=NullS;
+ | CREATE build_method fulltext INDEX_SYM ident init_key_options ON
+ table_ident
+ {
+ if (add_create_index_prepare(Lex, $8, $2))
+ MYSQL_YYABORT;
}
'(' key_list ')' fulltext_key_options
{
- LEX *lex=Lex;
- Key *key;
- if ($3 != Key::FULLTEXT && lex->key_create_info.parser_name.str)
- {
- my_parse_error(ER(ER_SYNTAX_ERROR));
- MYSQL_YYABORT;
- }
- key= new Key($3, $5.str, &lex->key_create_info, 0,
- lex->col_list);
- if (key == NULL)
+ if (add_create_index(Lex, $3, $5.str))
MYSQL_YYABORT;
- lex->alter_info.key_list.push_back(key);
- lex->col_list.empty();
}
| CREATE build_method spatial INDEX_SYM ident init_key_options ON
table_ident
- {
- LEX *lex=Lex;
- lex->sql_command= SQLCOM_CREATE_INDEX;
- if (!lex->current_select->add_table_to_list(lex->thd, $8,
- NULL,
- TL_OPTION_UPDATING))
- MYSQL_YYABORT;
- lex->alter_info.reset();
- lex->alter_info.flags= ALTER_ADD_INDEX;
- lex->alter_info.build_method= $2;
- lex->col_list.empty();
- lex->change=NullS;
+ {
+ if (add_create_index_prepare(Lex, $8, $2))
+ MYSQL_YYABORT;
}
'(' key_list ')' spatial_key_options
{
- LEX *lex=Lex;
- Key *key;
- if ($3 != Key::FULLTEXT && lex->key_create_info.parser_name.str)
- {
- my_parse_error(ER(ER_SYNTAX_ERROR));
+ if (add_create_index(Lex, $3, $5.str))
MYSQL_YYABORT;
- }
- key= new Key($3, $5.str, &lex->key_create_info, 0,
- lex->col_list);
- if (key == NULL)
- MYSQL_YYABORT;
- lex->alter_info.key_list.push_back(key);
- lex->col_list.empty();
}
| CREATE DATABASE opt_if_not_exists ident
{
Attachment: [text/bzr-bundle] bzr/jonas@mysql.com-20100312140208-z9u18fzpmdb59ckj.bundle
| Thread |
|---|
| • bzr commit into mysql-5.1-telco-7.1 branch (jonas:3494) | Jonas Oreland | 12 Mar 2010 |