diff options
author | unknown <bell@sanja.is.com.ua> | 2004-10-20 16:11:16 +0300 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2004-10-20 16:11:16 +0300 |
commit | 0a929c5e6eb5042400a154fc01cae524f7d2e0a5 (patch) | |
tree | b5b93396b554d77b8cadae7610977be000865b1d /sql/sql_handler.cc | |
parent | 6853eb45c8085480643af94734a042b9c4c5b939 (diff) | |
parent | e3b559938c1a739add9ad1dd2e5c62b8e10ade96 (diff) | |
download | mariadb-git-0a929c5e6eb5042400a154fc01cae524f7d2e0a5.tar.gz |
Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-error-5.0
mysql-test/r/sp.result:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_handler.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Diffstat (limited to 'sql/sql_handler.cc')
-rw-r--r-- | sql/sql_handler.cc | 43 |
1 files changed, 20 insertions, 23 deletions
diff --git a/sql/sql_handler.cc b/sql/sql_handler.cc index 38bc4756f81..6bab90a786e 100644 --- a/sql/sql_handler.cc +++ b/sql/sql_handler.cc @@ -47,7 +47,7 @@ static TABLE **find_table_ptr_by_name(THD *thd,const char *db, bool is_alias, bool dont_lock, bool *was_flushed); -int mysql_ha_open(THD *thd, TABLE_LIST *tables) +bool mysql_ha_open(THD *thd, TABLE_LIST *tables) { HANDLER_TABLES_HACK(thd); uint counter; @@ -58,18 +58,18 @@ int mysql_ha_open(THD *thd, TABLE_LIST *tables) HANDLER_TABLES_HACK(thd); if (err) - return -1; + return TRUE; // there can be only one table in *tables if (!(tables->table->file->table_flags() & HA_CAN_SQL_HANDLER)) { my_printf_error(ER_ILLEGAL_HA,ER(ER_ILLEGAL_HA),MYF(0), tables->alias); mysql_ha_close(thd, tables,1); - return -1; + return TRUE; } send_ok(thd); - return 0; + return FALSE; } @@ -98,11 +98,11 @@ int mysql_ha_open(THD *thd, TABLE_LIST *tables) is suppressed. RETURN - 0 ok - -1 error + FALSE OK + TRUE Error */ -int mysql_ha_close(THD *thd, TABLE_LIST *tables, +bool mysql_ha_close(THD *thd, TABLE_LIST *tables, bool dont_send_ok, bool dont_lock, bool no_alias) { TABLE **table_ptr; @@ -127,11 +127,11 @@ int mysql_ha_close(THD *thd, TABLE_LIST *tables, { my_printf_error(ER_UNKNOWN_TABLE, ER(ER_UNKNOWN_TABLE), MYF(0), tables->alias, "HANDLER"); - return -1; + return TRUE; } if (!dont_send_ok) send_ok(thd); - return 0; + return FALSE; } @@ -201,11 +201,11 @@ static enum enum_ha_read_modes rkey_to_rnext[]= { RNEXT_SAME, RNEXT, RPREV, RNEXT, RPREV, RNEXT, RPREV, RPREV }; -int mysql_ha_read(THD *thd, TABLE_LIST *tables, - enum enum_ha_read_modes mode, char *keyname, - List<Item> *key_expr, - enum ha_rkey_function ha_rkey_mode, Item *cond, - ha_rows select_limit,ha_rows offset_limit) +bool mysql_ha_read(THD *thd, TABLE_LIST *tables, + enum enum_ha_read_modes mode, char *keyname, + List<Item> *key_expr, + enum ha_rkey_function ha_rkey_mode, Item *cond, + ha_rows select_limit,ha_rows offset_limit) { int err, keyno=-1; bool was_flushed; @@ -216,12 +216,12 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables, { my_printf_error(ER_UNKNOWN_TABLE,ER(ER_UNKNOWN_TABLE),MYF(0), tables->alias,"HANDLER"); - return -1; + return TRUE; } tables->table=table; if (cond && (cond->fix_fields(thd, tables, &cond) || cond->check_cols(1))) - return -1; + return TRUE; /* InnoDB needs to know that this table handle is used in the HANDLER */ @@ -233,7 +233,7 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables, { my_printf_error(ER_KEY_DOES_NOT_EXITS,ER(ER_KEY_DOES_NOT_EXITS),MYF(0), keyname,tables->alias); - return -1; + return TRUE; } table->file->ha_index_or_rnd_end(); table->file->ha_index_init(keyno); @@ -333,10 +333,7 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables, key_len+=key_part->store_length; } if (!(key= (byte*) thd->calloc(ALIGN_SIZE(key_len)))) - { - send_error(thd,ER_OUTOFMEMORY); goto err; - } key_copy(key, table->record[0], table->key_info + keyno, key_len); err=table->file->index_read(table->record[0], key,key_len,ha_rkey_mode); @@ -344,7 +341,7 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables, break; } default: - send_error(thd,ER_ILLEGAL_HA); + my_error(ER_ILLEGAL_HA, MYF(0)); goto err; } @@ -384,11 +381,11 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables, ok: mysql_unlock_tables(thd,lock); send_eof(thd); - return 0; + return FALSE; err: mysql_unlock_tables(thd,lock); err0: - return -1; + return TRUE; } |