diff options
author | unknown <serg@serg.mylan> | 2004-07-20 00:53:24 +0200 |
---|---|---|
committer | unknown <serg@serg.mylan> | 2004-07-20 00:53:24 +0200 |
commit | eee5f15b92f71c74ce315932770a603e4deef477 (patch) | |
tree | b39cfbb54d66b05cd075839aa58dc3215c8d4146 /sql | |
parent | d57d78ac10980e28344f285bdbc986fa3ee3496e (diff) | |
parent | b940ae1012b00e74e2155c4e35ca7872bed278e3 (diff) | |
download | mariadb-git-eee5f15b92f71c74ce315932770a603e4deef477.tar.gz |
manual merged (blame me!)
Build-tools/Do-compile:
Auto merged
Docs/Makefile.am:
Auto merged
innobase/btr/btr0cur.c:
Auto merged
innobase/include/lock0lock.h:
Auto merged
innobase/include/row0mysql.h:
Auto merged
innobase/include/srv0srv.h:
Auto merged
innobase/include/sync0arr.h:
Auto merged
innobase/include/trx0trx.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
innobase/srv/srv0start.c:
Auto merged
innobase/sync/sync0arr.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
mysql-test/r/innodb.result:
to be fixed after the merge
Diffstat (limited to 'sql')
-rw-r--r-- | sql/ha_innodb.cc | 4 | ||||
-rw-r--r-- | sql/sql_insert.cc | 8 | ||||
-rw-r--r-- | sql/sql_load.cc | 5 |
3 files changed, 13 insertions, 4 deletions
diff --git a/sql/ha_innodb.cc b/sql/ha_innodb.cc index 6eae315e443..21a2e338812 100644 --- a/sql/ha_innodb.cc +++ b/sql/ha_innodb.cc @@ -4783,8 +4783,8 @@ ha_innobase::external_lock( trx->n_mysql_tables_in_use--; prebuilt->mysql_has_locked = FALSE; auto_inc_counter_for_this_stat = 0; - if (trx->n_tables_locked) { - row_unlock_table_for_mysql(trx); + if (trx->n_lock_table_exp) { + row_unlock_tables_for_mysql(trx); } /* If the MySQL lock count drops to zero we know that the current SQL diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index b769178565b..406bff6d273 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -1696,9 +1696,13 @@ void select_create::abort() table->file->extra(HA_EXTRA_NO_IGNORE_DUP_KEY); enum db_type table_type=table->db_type; if (!table->tmp_table) + { hash_delete(&open_cache,(byte*) table); - if (!create_info->table_existed) - quick_rm_table(table_type,db,name); + if (!create_info->table_existed) + quick_rm_table(table_type, db, name); + } + else if (!create_info->table_existed) + close_temporary_table(thd, db, name); table=0; } VOID(pthread_mutex_unlock(&LOCK_open)); diff --git a/sql/sql_load.cc b/sql/sql_load.cc index 167fb2daf8b..8442d03c1d9 100644 --- a/sql/sql_load.cc +++ b/sql/sql_load.cc @@ -310,6 +310,11 @@ int mysql_load(THD *thd,sql_exchange *ex,TABLE_LIST *table_list, { if (transactional_table) ha_autocommit_or_rollback(thd,error); + + if (read_file_from_client) + while (!read_info.next_line()) + ; + #ifndef EMBEDDED_LIBRARY if (mysql_bin_log.is_open()) { |