1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

Merge with 3.23.42

configure.in:
  Auto merged
BitKeeper/deleted/.del-violite.c~d7b85be615595ace:
  Auto merged
BitKeeper/deleted/.del-violite.c~984c09cffe14a11b:
  Auto merged
client/Makefile.am:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqlbinlog.cc:
  Auto merged
heap/hp_test2.c:
  Auto merged
include/global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/myisam.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysql/net.c:
  Auto merged
myisam/sort.c:
  Auto merged
sql-bench/test-create.sh:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/lock.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mini_client.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/net_serv.cc:
  Auto merged
mysql-test/t/merge.test:
  Auto merged
sql/ha_innobase.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
support-files/mysql.spec.sh:
  Auto merged
mysql-test/t/bdb.test:
  Auto merged
Docs/manual.texi:
  merge
myisam/myisampack.c:
  merge
This commit is contained in:
unknown
2001-09-13 09:52:35 +02:00
56 changed files with 832 additions and 482 deletions

View File

@@ -86,7 +86,8 @@ static void init_signals(void)
inline bool end_active_trans(THD *thd)
{
int error=0;
if (thd->options & (OPTION_NOT_AUTO_COMMIT | OPTION_BEGIN))
if (thd->options & (OPTION_NOT_AUTO_COMMIT | OPTION_BEGIN |
OPTION_TABLE_LOCK))
{
thd->options&= ~(ulong) (OPTION_BEGIN | OPTION_STATUS_NO_TRANS_UPDATE);
thd->server_status&= ~SERVER_STATUS_IN_TRANS;
@@ -1931,7 +1932,11 @@ mysql_execute_command(void)
{
thd->lock=thd->locked_tables;
thd->locked_tables=0; // Will be automaticly closed
}
if (thd->options & OPTION_TABLE_LOCK)
{
end_active_trans(thd);
thd->options&= ~(ulong) (OPTION_TABLE_LOCK);
}
if (thd->global_read_lock)
unlock_global_read_lock(thd);
@@ -1949,12 +1954,15 @@ mysql_execute_command(void)
if (grant_option && check_grant(thd,SELECT_ACL | INSERT_ACL | UPDATE_ACL | DELETE_ACL,tables))
goto error;
thd->in_lock_tables=1;
thd->options|= OPTION_TABLE_LOCK;
if (!(res=open_and_lock_tables(thd,tables)))
{
thd->locked_tables=thd->lock;
thd->lock=0;
send_ok(&thd->net);
}
else
thd->options&= ~(ulong) (OPTION_TABLE_LOCK);
thd->in_lock_tables=0;
break;
case SQLCOM_CREATE_DB: