diff options
author | unknown <serg@infomag.ape.relarn.ru> | 2000-08-21 15:54:41 +0400 |
---|---|---|
committer | unknown <serg@infomag.ape.relarn.ru> | 2000-08-21 15:54:41 +0400 |
commit | d36c774f394e207d557126bfca276d480da56261 (patch) | |
tree | b690cf10c553439f57075085f9f867fa0031bc43 | |
parent | 90bc6094eed4bde988bad568ac48bd686a127639 (diff) | |
parent | 44170cb9824a21955de756a9c9a5d116448c235c (diff) | |
download | mariadb-git-d36c774f394e207d557126bfca276d480da56261.tar.gz |
Merge
sql/sql_yacc.yy:
Auto merged
sql/sql_parse.cc:
merged
-rw-r--r-- | sql/item_func.h | 3 | ||||
-rw-r--r-- | sql/sql_parse.cc | 80 | ||||
-rw-r--r-- | sql/sql_yacc.yy | 71 |
3 files changed, 77 insertions, 77 deletions
diff --git a/sql/item_func.h b/sql/item_func.h index 0e99673ead2..efee77c7be2 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -829,7 +829,7 @@ public: }; -/* SerG: for fulltext search */ +/* for fulltext search */ #include <ft_global.h> class Item_func_match :public Item_real_func @@ -855,4 +855,3 @@ public: double val(); longlong val_int() { return val()!=0.0; } }; - diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc index de50855b9de..a3c3223e116 100644 --- a/sql/sql_parse.cc +++ b/sql/sql_parse.cc @@ -1,15 +1,15 @@ /* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB - + This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ @@ -172,7 +172,7 @@ check_connections(THD *thd) if (!thd->host) // If TCP/IP connection { char ip[17]; - + if (vio_peer_addr(net->vio,ip)) return (ER_BAD_HOST_ERROR); if (!(thd->ip = my_strdup(ip,MYF(0)))) @@ -182,7 +182,7 @@ check_connections(THD *thd) if (!strcmp(thd->ip,"127.0.0.1")) { if (!(thd->host=my_strdup("localhost",MYF(0)))) - return (ER_OUT_OF_RESOURCES); + return (ER_OUT_OF_RESOURCES); } else #endif @@ -499,7 +499,7 @@ int mysql_table_dump(THD* thd, char* db, char* tbl_name, int fd) table_list->lock_type = TL_READ_NO_INSERT; table_list->next = 0; remove_escape(table_list->real_name); - + if(!(table=open_ltable(thd, table_list, TL_READ_NO_INSERT))) DBUG_RETURN(1); @@ -519,12 +519,12 @@ int mysql_table_dump(THD* thd, char* db, char* tbl_name, int fd) error = table->file->dump(thd,fd); if(error) my_error(ER_GET_ERRNO, MYF(0)); - + err: - + close_thread_tables(thd); - - DBUG_RETURN(error); + + DBUG_RETURN(error); } @@ -592,7 +592,7 @@ bool do_command(THD *thd) tbl_name[tbl_len] = 0; if(mysql_table_dump(thd, db, tbl_name, -1)) send_error(&thd->net); // dump to NET - + break; } case COM_CHANGE_USER: @@ -712,7 +712,7 @@ bool do_command(THD *thd) if(check_access(thd, FILE_ACL, any_db)) break; mysql_log.write(command, 0); - + ulong pos; ushort flags; pos = uint4korr(packet + 1); @@ -949,7 +949,7 @@ mysql_execute_command(void) break; } case SQLCOM_LOAD_MASTER_TABLE: - + if (!tables->db) tables->db=thd->db; if (check_access(thd,CREATE_ACL,tables->db,&tables->grant.privilege)) @@ -982,11 +982,11 @@ mysql_execute_command(void) // this way we make sure that when we are done, we are clean break; } - + res = 0; send_ok(&thd->net); break; - + case SQLCOM_CREATE_TABLE: #ifdef DEMO_VERSION send_error(&thd->net,ER_NOT_ALLOWED_COMMAND); @@ -1081,7 +1081,7 @@ mysql_execute_command(void) case SQLCOM_SLAVE_STOP: stop_slave(thd); break; - + case SQLCOM_ALTER_TABLE: #if defined(DONT_ALLOW_SHOW_COMMANDS) @@ -1137,7 +1137,7 @@ mysql_execute_command(void) if (mysql_rename_tables(thd,tables)) res= -1; break; - case SQLCOM_SHOW_CREATE: + case SQLCOM_SHOW_CREATE: /* SerG:show */ #ifdef DONT_ALLOW_SHOW_COMMANDS send_error(&thd->net,ER_NOT_ALLOWED_COMMAND); /* purecov: inspected */ DBUG_VOID_RETURN; @@ -1147,7 +1147,7 @@ mysql_execute_command(void) check_access(thd, SELECT_ACL | EXTRA_ACL, tables->db, &tables->grant.privilege)) goto error; - res = mysqld_show_create(thd, tables); + res = mysqld_show_create(thd, tables); break; } #endif @@ -1385,7 +1385,7 @@ mysql_execute_command(void) break; } #endif - case SQLCOM_SHOW_FIELDS: + case SQLCOM_SHOW_FIELDS: /* SerG:show */ #ifdef DONT_ALLOW_SHOW_COMMANDS send_error(&thd->net,ER_NOT_ALLOWED_COMMAND); /* purecov: inspected */ DBUG_VOID_RETURN; @@ -1411,7 +1411,7 @@ mysql_execute_command(void) break; } #endif - case SQLCOM_SHOW_KEYS: + case SQLCOM_SHOW_KEYS: /* SerG:show */ #ifdef DONT_ALLOW_SHOW_COMMANDS send_error(&thd->net,ER_NOT_ALLOWED_COMMAND); /* purecov: inspected */ DBUG_VOID_RETURN; @@ -1474,7 +1474,7 @@ mysql_execute_command(void) if (org_options & OPTION_AUTO_COMMIT) { /* We changed to auto_commit mode */ - thd->options&= ~OPTION_BEGIN; + thd->options&= ~OPTION_BEGIN; thd->server_status|= SERVER_STATUS_AUTOCOMMIT; if (ha_commit(thd)) { @@ -1483,7 +1483,7 @@ mysql_execute_command(void) } } else - thd->server_status&= ~SERVER_STATUS_AUTOCOMMIT; + thd->server_status&= ~SERVER_STATUS_AUTOCOMMIT; } send_ok(&thd->net); break; @@ -2368,7 +2368,7 @@ bool reload_acl_and_cache(uint options) reset_master(); if (options & REFRESH_SLAVE) reset_slave(); - + return result; } @@ -2441,7 +2441,7 @@ static int start_slave(THD* thd , bool net_report) if(!slave_running) if(master_host) { - pthread_t hThread; + pthread_t hThread; if(pthread_create(&hThread, &connection_attrib, handle_slave, 0)) { err = "cannot create slave thread"; @@ -2456,7 +2456,7 @@ static int start_slave(THD* thd , bool net_report) if(err) { if(net_report) send_error(net, 0, err); - return 1; + return 1; } else if(net_report) send_ok(net); @@ -2469,10 +2469,10 @@ static int stop_slave(THD* thd, bool net_report ) if(!thd) thd = current_thd; NET* net = &thd->net; const char* err = 0; - + if(check_access(thd, PROCESS_ACL, any_db)) return 1; - + pthread_mutex_lock(&LOCK_slave); if (slave_running) { @@ -2485,10 +2485,10 @@ static int stop_slave(THD* thd, bool net_report ) } else err = "Slave is not running"; - + pthread_mutex_unlock(&LOCK_slave); thd->proc_info = 0; - + if(err) { if(net_report) send_error(net, 0, err); @@ -2505,15 +2505,15 @@ static void reset_slave() MY_STAT stat_area; char fname[FN_REFLEN]; bool slave_was_running = slave_running; - + if(slave_running) stop_slave(0,0); - + fn_format(fname, master_info_file, mysql_data_home, "", 4+16+32); if(my_stat(fname, &stat_area, MYF(0))) if(my_delete(fname, MYF(MY_WME))) return; - + if(slave_was_running) start_slave(0,0); } @@ -2533,7 +2533,7 @@ static int change_master(THD* thd) pthread_mutex_unlock(&LOCK_slave); thd->proc_info = "changing master"; LEX_MASTER_INFO* lex_mi = &thd->lex.mi; - + pthread_mutex_lock(&glob_mi.lock); if((lex_mi->host || lex_mi->port) && !lex_mi->log_file_name && !lex_mi->pos) { @@ -2547,7 +2547,7 @@ static int change_master(THD* thd) sizeof(glob_mi.log_file_name)); if(lex_mi->pos) glob_mi.pos = lex_mi->pos; - + if(lex_mi->host) strmake(glob_mi.host, lex_mi->host, sizeof(glob_mi.host)); if(lex_mi->user) @@ -2558,14 +2558,14 @@ static int change_master(THD* thd) glob_mi.port = lex_mi->port; if(lex_mi->connect_retry) glob_mi.connect_retry = lex_mi->connect_retry; - + flush_master_info(&glob_mi); pthread_mutex_unlock(&glob_mi.lock); thd->proc_info = "starting slave"; if(slave_was_running) start_slave(0,0); thd->proc_info = 0; - + send_ok(&thd->net); return 0; } @@ -2603,9 +2603,9 @@ static void reset_master() strmov(strcend(tmp,'.'),"-bin"); opt_bin_logname=tmp; } - + mysql_bin_log.open(opt_bin_logname,LOG_BIN); - + } int show_binlog_info(THD* thd) @@ -2616,12 +2616,12 @@ int show_binlog_info(THD* thd) field_list.push_back(new Item_empty_string("Position",20)); field_list.push_back(new Item_empty_string("Binlog_do_db",20)); field_list.push_back(new Item_empty_string("Binlog_ignore_db",20)); - + if(send_fields(thd, field_list, 1)) DBUG_RETURN(-1); String* packet = &thd->packet; packet->length(0); - + if(mysql_bin_log.is_open()) { LOG_INFO li; diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 5cfc05406c4..90cea58e871 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -1,15 +1,15 @@ /* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB - + This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ @@ -25,7 +25,7 @@ #include "sql_acl.h" #include "lex_symbol.h" #include <myisam.h> - + extern void yyerror(const char*); int yylex(void *yylval); @@ -451,7 +451,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b,int *yystacksize); literal text_literal insert_ident group_ident order_ident simple_ident select_item2 expr opt_expr opt_else sum_expr in_sum_expr table_wild opt_pad no_in_expr expr_expr simple_expr no_and_expr - using_list + using_list %type <item_list> expr_list udf_expr_list when_list ident_list @@ -548,7 +548,7 @@ verb_clause: | rollback | select | set - | slave + | slave | show | unlock | update @@ -557,7 +557,7 @@ verb_clause: /* change master */ change: - CHANGE MASTER_SYM TO_SYM + CHANGE MASTER_SYM TO_SYM { LEX *lex = Lex; lex->sql_command = SQLCOM_CHANGE_MASTER; @@ -568,7 +568,7 @@ master_defs: master_def | master_defs ',' master_def - + master_def: MASTER_HOST_SYM EQ TEXT_STRING { @@ -604,9 +604,9 @@ master_def: { Lex->mi.connect_retry = $3; } - - + + /* create a table */ create: @@ -614,7 +614,7 @@ create: { LEX *lex=Lex; lex->sql_command= SQLCOM_CREATE_TABLE; - if (!add_table_to_list($5, + if (!add_table_to_list($5, ($2 & HA_LEX_CREATE_TMP_TABLE ? &tmp_table_alias : (LEX_STRING*) 0))) YYABORT; @@ -678,7 +678,7 @@ create: } create2: - '(' field_list ')' opt_create_table_options create3 {} + '(' field_list ')' opt_create_table_options create3 {} | opt_create_table_options create3 {} create3: @@ -690,18 +690,18 @@ create3: select_options select_item_list opt_select_from {} opt_table_options: - /* empty */ { $$= 0; } + /* empty */ { $$= 0; } | table_options { $$= $1;} table_options: table_option { $$=$1; } | table_option table_options { $$= $1 | $2 } - + table_option: TEMPORARY { $$=HA_LEX_CREATE_TMP_TABLE; } opt_if_not_exists: - /* empty */ { $$= 0; } + /* empty */ { $$= 0; } | IF NOT EXISTS { $$=HA_LEX_CREATE_IF_NOT_EXISTS; } opt_create_table_options: @@ -723,7 +723,7 @@ create_table_option: | PACK_KEYS_SYM EQ ULONG_NUM { Lex->create_info.table_options|= $3 ? HA_OPTION_PACK_KEYS : HA_OPTION_NO_PACK_KEYS; } | CHECKSUM_SYM EQ ULONG_NUM { Lex->create_info.table_options|= $3 ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM; } | DELAY_KEY_WRITE_SYM EQ ULONG_NUM { Lex->create_info.table_options|= $3 ? HA_OPTION_DELAY_KEY_WRITE : HA_OPTION_NO_DELAY_KEY_WRITE; } - | ROW_FORMAT_SYM EQ row_types { Lex->create_info.row_type= $3; } + | ROW_FORMAT_SYM EQ row_types { Lex->create_info.row_type= $3; } | RAID_TYPE EQ raid_types { Lex->create_info.raid_type= $3; Lex->create_info.used_fields|= HA_CREATE_USED_RAID;} | RAID_CHUNKS EQ ULONG_NUM { Lex->create_info.raid_chunks= $3; Lex->create_info.used_fields|= HA_CREATE_USED_RAID;} | RAID_CHUNKSIZE EQ ULONG_NUM { Lex->create_info.raid_chunksize= $3*RAID_BLOCK_SIZE; Lex->create_info.used_fields|= HA_CREATE_USED_RAID;} @@ -865,7 +865,7 @@ char: CHAR_SYM {} | NCHAR_SYM {} | NATIONAL_SYM CHAR_SYM {} - + varchar: char VARYING {} | VARCHAR {} @@ -964,6 +964,7 @@ delete_option: key_type: opt_constraint PRIMARY_SYM KEY_SYM { $$= Key::PRIMARY; } | key_or_index { $$= Key::MULTIPLE; } + | COLLECTION { $$= Key::FULLTEXT; } | opt_constraint UNIQUE_SYM { $$= Key::UNIQUE; } | opt_constraint UNIQUE_SYM key_or_index { $$= Key::UNIQUE; } @@ -1095,7 +1096,7 @@ slave: Lex->sql_command = SQLCOM_SLAVE_STOP; Lex->type = 0; }; - + repair: REPAIR table_or_tables { @@ -1123,7 +1124,7 @@ analyze: } check: - CHECK_SYM table_or_tables + CHECK_SYM table_or_tables { Lex->sql_command = SQLCOM_CHECK; Lex->check_opt.init(); @@ -1238,7 +1239,7 @@ select_alias: optional_braces: /* empty */ {} | '(' ')' {} - + /* all possible expressions */ expr: expr_expr {$$ = $1; } | simple_expr {$$ = $1; } @@ -1380,7 +1381,7 @@ simple_expr: (Item_func_match *)($$=new Item_func_match(*$2,$5))); } | BINARY expr %prec NEG { $$= new Item_func_binary($2); } | CASE_SYM opt_expr WHEN_SYM when_list opt_else END - { $$= new Item_func_case(* $4, $2, $5 ) } + { $$= new Item_func_case(* $4, $2, $5 ) } | FUNC_ARG0 '(' ')' { $$= ((Item*(*)(void))($1.symbol->create_func))();} | FUNC_ARG1 '(' expr ')' @@ -1574,7 +1575,7 @@ simple_expr: { $$= new Item_func_yearweek($3, $5); } | BENCHMARK_SYM '(' ULONG_NUM ',' expr ')' { $$=new Item_func_benchmark($3,$5); } - | EXTRACT_SYM '(' interval FROM expr ')' + | EXTRACT_SYM '(' interval FROM expr ')' { $$=new Item_extract( $3, $5); } udf_expr_list: @@ -1645,12 +1646,12 @@ when_list: { $$= Lex->when_list.pop(); } when_list2: - expr THEN_SYM expr + expr THEN_SYM expr { Lex->when_list.head()->push_back($1); Lex->when_list.head()->push_back($3); } - | when_list2 WHEN_SYM expr THEN_SYM expr + | when_list2 WHEN_SYM expr THEN_SYM expr { Lex->when_list.head()->push_back($3); Lex->when_list.head()->push_back($5); @@ -2113,11 +2114,11 @@ show_param: | MASTER_SYM STATUS_SYM { Lex->sql_command = SQLCOM_SHOW_MASTER_STAT; - } + } | SLAVE STATUS_SYM { Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT; - } + } opt_db: /* empty */ { $$= 0; } @@ -2166,8 +2167,8 @@ flush_option: | PRIVILEGES { Lex->type|= REFRESH_GRANT; } | LOGS_SYM { Lex->type|= REFRESH_LOG; } | STATUS_SYM { Lex->type|= REFRESH_STATUS; } - | SLAVE { Lex->type|= REFRESH_SLAVE; } - | MASTER_SYM { Lex->type|= REFRESH_MASTER; } + | SLAVE { Lex->type|= REFRESH_SLAVE; } + | MASTER_SYM { Lex->type|= REFRESH_MASTER; } /* kill threads */ @@ -2200,13 +2201,13 @@ load: LOAD DATA_SYM opt_low_priority opt_local INFILE TEXT_STRING YYABORT; } | - LOAD TABLE_SYM table_ident FROM MASTER_SYM + LOAD TABLE_SYM table_ident FROM MASTER_SYM { Lex->sql_command = SQLCOM_LOAD_MASTER_TABLE; if (!add_table_to_list($3,NULL)) YYABORT; - - } + + } opt_local: /* empty */ { $$=0;} @@ -2329,7 +2330,7 @@ ident: ident_or_text: ident { $$=$1;} - | TEXT_STRING { $$=$1;} + | TEXT_STRING { $$=$1;} | LEX_HOSTNAME { $$=$1;} user: @@ -2412,10 +2413,10 @@ keyword: | PROCESSLIST_SYM {} | QUICK {} | RAID_0_SYM {} - | RAID_CHUNKS {} - | RAID_CHUNKSIZE {} + | RAID_CHUNKS {} + | RAID_CHUNKSIZE {} | RAID_STRIPED_SYM {} - | RAID_TYPE {} + | RAID_TYPE {} | RELOAD {} | REPAIR {} | ROLLBACK_SYM {} |