diff options
author | serg@serg.mylan <> | 2004-06-26 14:21:32 +0200 |
---|---|---|
committer | serg@serg.mylan <> | 2004-06-26 14:21:32 +0200 |
commit | 450e5b0119871375b1d1c258bef61735edb8f822 (patch) | |
tree | b347e9d8239a7545f7e1124189aa2de1238fbcb0 /sql | |
parent | d2adc38cb627825baa29052d5cf231bdaa182877 (diff) | |
download | mariadb-git-450e5b0119871375b1d1c258bef61735edb8f822.tar.gz |
after merge fixed
Diffstat (limited to 'sql')
-rw-r--r-- | sql/ha_berkeley.cc | 6 | ||||
-rw-r--r-- | sql/sql_select.cc | 7 | ||||
-rw-r--r-- | sql/sql_yacc.yy | 9 |
3 files changed, 8 insertions, 14 deletions
diff --git a/sql/ha_berkeley.cc b/sql/ha_berkeley.cc index ecdf4c60d3e..4bed33af15b 100644 --- a/sql/ha_berkeley.cc +++ b/sql/ha_berkeley.cc @@ -1583,18 +1583,12 @@ int ha_berkeley::index_last(byte * buf) int ha_berkeley::rnd_init(bool scan) { DBUG_ENTER("rnd_init"); -#ifdef NOT_YET - DBUG_ASSERT(active_index == MAX_KEY); -#endif current_row.flags=DB_DBT_REALLOC; DBUG_RETURN(index_init(primary_key)); } int ha_berkeley::rnd_end() { -#ifdef NOT_YET - DBUG_ASSERT(active_index == MAX_KEY); -#endif return index_end(); } diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 26ee225262b..2f8ede4b4cb 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -2278,12 +2278,13 @@ add_key_fields(JOIN_TAB *stat,KEY_FIELD **key_fields,uint *and_level, case Item_func::OPTIMIZE_NONE: break; case Item_func::OPTIMIZE_KEY: - // BETWEEN or IN + // BETWEEN, IN, NOT if (cond_func->key_item()->real_item()->type() == Item::FIELD_ITEM && !(cond_func->used_tables() & OUTER_REF_TABLE_BIT)) add_key_field(key_fields,*and_level,cond_func, - ((Item_field*) (cond_func->key_item()->real_item()))-> - field, cond_func->argument_count() == 2, + ((Item_field*)(cond_func->key_item()->real_item()))->field, + cond_func->argument_count() == 2 && + cond_func->functype() == Item_func::IN_FUNC, cond_func->arguments()+1, cond_func->argument_count()-1, usable_tables); break; diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 6e88247bf32..c971abedfca 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -602,7 +602,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize); opt_table_alias %type <table> - table_ident table_ident_ref references + table_ident table_ident_nodb references %type <simple_string> remember_name remember_end opt_ident opt_db text_or_password @@ -4874,9 +4874,8 @@ table_ident: | '.' ident { $$=new Table_ident($2);} /* For Delphi */ ; -table_ident_ref: +table_ident_nodb: ident { LEX_STRING db={(char*) any_db,3}; $$=new Table_ident(YYTHD, db,$1,0); } - | ident '.' ident { $$=new Table_ident(YYTHD, $1,$3,0);} ; IDENT_sys: @@ -5410,14 +5409,14 @@ handler: if (!lex->current_select->add_table_to_list(lex->thd, $2, $4, 0)) YYABORT; } - | HANDLER_SYM table_ident_ref CLOSE_SYM + | HANDLER_SYM table_ident_nodb CLOSE_SYM { LEX *lex= Lex; lex->sql_command = SQLCOM_HA_CLOSE; if (!lex->current_select->add_table_to_list(lex->thd, $2, 0, 0)) YYABORT; } - | HANDLER_SYM table_ident_ref READ_SYM + | HANDLER_SYM table_ident_nodb READ_SYM { LEX *lex=Lex; lex->sql_command = SQLCOM_HA_READ; |