summaryrefslogtreecommitdiff
path: root/sql/ha_myisammrg.cc
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2005-11-23 22:58:53 +0200
committerunknown <monty@mysql.com>2005-11-23 22:58:53 +0200
commit039168c2fa724b9ed87ce2f19a7ea20acbd8a1de (patch)
tree8972ae3c8dffff8f3b6f27565d191af346c9ac8d /sql/ha_myisammrg.cc
parentfe245ed8ba1258e1f3920e449338ea92e3a3a96e (diff)
parentf631b361b6119fb73df38602ad58e140848f92d7 (diff)
downloadmariadb-git-039168c2fa724b9ed87ce2f19a7ea20acbd8a1de.tar.gz
Merge mysql.com:/home/my/mysql-5.1
into mysql.com:/home/my/mysql-5.1-TDC mysql-test/r/variables.result: Auto merged mysql-test/t/variables.test: Auto merged sql/ha_berkeley.cc: Auto merged sql/ha_federated.cc: Auto merged sql/ha_federated.h: Auto merged sql/ha_innodb.cc: Auto merged sql/ha_myisammrg.cc: Auto merged sql/ha_ndbcluster.cc: Auto merged sql/handler.cc: Auto merged sql/item.cc: Auto merged sql/item.h: Auto merged sql/item_cmpfunc.cc: Auto merged sql/item_func.cc: Auto merged sql/item_subselect.cc: Auto merged sql/item_sum.cc: Auto merged sql/item_timefunc.cc: Auto merged sql/key.cc: Auto merged sql/mysqld.cc: Auto merged sql/opt_range.cc: Auto merged sql/parse_file.cc: Auto merged sql/set_var.cc: Auto merged sql/slave.cc: Auto merged sql/sp.cc: Auto merged sql/sp_head.cc: Auto merged sql/sp_head.h: Auto merged sql/sql_acl.cc: Auto merged sql/sql_class.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_lex.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_load.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_show.cc: Auto merged sql/sql_table.cc: Auto merged sql/sql_trigger.cc: Auto merged sql/sql_view.cc: Auto merged sql/structs.h: Auto merged sql/field.cc: Merge with global tree sql/sql_base.cc: Merge with global tree sql/table.cc: Merge with global tree
Diffstat (limited to 'sql/ha_myisammrg.cc')
-rw-r--r--sql/ha_myisammrg.cc19
1 files changed, 9 insertions, 10 deletions
diff --git a/sql/ha_myisammrg.cc b/sql/ha_myisammrg.cc
index abf0f1d2ed5..37dfe34b40c 100644
--- a/sql/ha_myisammrg.cc
+++ b/sql/ha_myisammrg.cc
@@ -32,7 +32,7 @@
** MyISAM MERGE tables
*****************************************************************************/
-static handler *myisammrg_create_handler(TABLE *table);
+static handler *myisammrg_create_handler(TABLE_SHARE *table);
/* MyISAM MERGE handlerton */
@@ -69,13 +69,13 @@ handlerton myisammrg_hton= {
HTON_CAN_RECREATE
};
-static handler *myisammrg_create_handler(TABLE *table)
+static handler *myisammrg_create_handler(TABLE_SHARE *table)
{
return new ha_myisammrg(table);
}
-ha_myisammrg::ha_myisammrg(TABLE *table_arg)
+ha_myisammrg::ha_myisammrg(TABLE_SHARE *table_arg)
:handler(&myisammrg_hton, table_arg), file(0)
{}
@@ -302,7 +302,6 @@ void ha_myisammrg::info(uint flag)
errkey = info.errkey;
table->s->keys_in_use.set_prefix(table->s->keys);
table->s->db_options_in_use= info.options;
- table->s->is_view= 1;
mean_rec_length= info.reclength;
block_size=0;
update_time=0;
@@ -456,9 +455,9 @@ int ha_myisammrg::create(const char *name, register TABLE *form,
for (pos= table_names; tables; tables= tables->next_local)
{
const char *table_name;
- TABLE **tbl= 0;
+ TABLE *tbl= 0;
if (create_info->options & HA_LEX_CREATE_TMP_TABLE)
- tbl= find_temporary_table(thd, tables->db, tables->table_name);
+ tbl= find_temporary_table(thd, tables);
if (!tbl)
{
/*
@@ -487,7 +486,7 @@ int ha_myisammrg::create(const char *name, register TABLE *form,
DBUG_RETURN(HA_ERR_OUT_OF_MEM);
}
else
- table_name= (*tbl)->s->path;
+ table_name= tbl->s->path.str;
*pos++= table_name;
}
*pos=0;
@@ -503,6 +502,7 @@ void ha_myisammrg::append_create_info(String *packet)
const char *current_db;
uint db_length;
THD *thd= current_thd;
+ MYRG_TABLE *open_table, *first;
if (file->merge_insert_method != MERGE_INSERT_DISABLED)
{
@@ -510,10 +510,9 @@ void ha_myisammrg::append_create_info(String *packet)
packet->append(get_type(&merge_insert_method,file->merge_insert_method-1));
}
packet->append(STRING_WITH_LEN(" UNION=("));
- MYRG_TABLE *open_table,*first;
- current_db= table->s->db;
- db_length= (uint) strlen(current_db);
+ current_db= table->s->db.str;
+ db_length= table->s->db.length;
for (first=open_table=file->open_tables ;
open_table != file->end_table ;