From 53df0e501a8264f188a03d45bcc85fa3eb2977bf Mon Sep 17 00:00:00 2001 From: "serg@serg.mysql.com" <> Date: Fri, 8 Dec 2000 13:53:24 +0100 Subject: sql_base.cc merge+insert (v.3) myrg_info.c merge+insert (v.3) myrg_extra.c merge+insert (v.3) ignore cleanup --- myisammrg/myrg_extra.c | 10 ---------- myisammrg/myrg_info.c | 22 ++++++++++++++++------ 2 files changed, 16 insertions(+), 16 deletions(-) (limited to 'myisammrg') diff --git a/myisammrg/myrg_extra.c b/myisammrg/myrg_extra.c index f6458588b59..c8a634e748f 100644 --- a/myisammrg/myrg_extra.c +++ b/myisammrg/myrg_extra.c @@ -40,19 +40,9 @@ int myrg_extra(MYRG_INFO *info,enum ha_extra_function function) info->current_table=0; info->last_used_table=info->open_tables; } - - info->records=info->del=info->data_file_length=0; for (file=info->open_tables ; file != info->end_table ; file++) - { if ((error=mi_extra(file->table,function))) save_error=error; - file->file_offset=info->data_file_length; - info->data_file_length+=file->table->s->state.state.data_file_length; - info->records+=file->table->s->state.state.records; - info->del+=file->table->s->state.state.del; - DBUG_PRINT("info2",("table: %s, offset: 0x%08lx", - file->table->filename,(ulong)file->file_offset)); - } } DBUG_RETURN(save_error); } diff --git a/myisammrg/myrg_info.c b/myisammrg/myrg_info.c index 959a34935fd..304216a8276 100644 --- a/myisammrg/myrg_info.c +++ b/myisammrg/myrg_info.c @@ -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 */ @@ -43,17 +43,27 @@ int myrg_status(MYRG_INFO *info,register MYMERGE_INFO *x,int flag) (ulong) -1L; if (flag != HA_STATUS_POS) { + MYRG_TABLE *file; + + info->records=info->del=info->data_file_length=0; + for (file=info->open_tables ; file != info->end_table ; file++) + { + file->file_offset=info->data_file_length; + info->data_file_length+=file->table->s->state.state.data_file_length; + info->records+=file->table->s->state.state.records; + info->del+=file->table->s->state.state.del; + DBUG_PRINT("info2",("table: %s, offset: 0x%08lx", + file->table->filename,(ulong)file->file_offset)); + } x->records = info->records; x->deleted = info->del; x->data_file_length = info->data_file_length; x->reclength = info->reclength; + x->options = info->options; if (current_table) x->errkey = current_table->table->errkey; else - { /* No tables in MRG */ x->errkey=0; - } - x->options = info->options; } DBUG_RETURN(0); } -- cgit v1.2.1