summaryrefslogtreecommitdiff
path: root/innobase/lock
diff options
context:
space:
mode:
authorunknown <monty@hundin.mysql.fi>2002-10-16 13:11:25 +0300
committerunknown <monty@hundin.mysql.fi>2002-10-16 13:11:25 +0300
commit7013d8ef0ae0a21fadfcc0a159ee1d83fdad8a9d (patch)
treed165b4baadac24102545d94c8f9fe180537a64f5 /innobase/lock
parente1d7b8414f14de681127f4e19340e4f7737d5bdb (diff)
parent74b73109c1304e62430faa85d2a63a6f2ffa626d (diff)
downloadmariadb-git-7013d8ef0ae0a21fadfcc0a159ee1d83fdad8a9d.tar.gz
Merge with 3.23.54
BitKeeper/etc/logging_ok: auto-union BitKeeper/deleted/.del-LICENSE~4cfaff8de837acb8: Auto merged BitKeeper/deleted/.del-MySQLEULA.txt: Delete: Docs/MySQLEULA.txt BitKeeper/deleted/.del-global.h~e80d28157acfdcb5: Auto merged Build-tools/mysql-copyright-2: Auto merged Build-tools/mysql-copyright: Auto merged heap/heapdef.h: Auto merged heap/hp_open.c: Auto merged innobase/btr/btr0cur.c: Auto merged innobase/lock/lock0lock.c: Auto merged innobase/os/os0file.c: Auto merged innobase/os/os0thread.c: Auto merged myisam/mi_open.c: Auto merged mysql-test/Makefile.am: Auto merged mysql-test/t/null_key.test: Auto merged mysys/safemalloc.c: Auto merged scripts/make_binary_distribution.sh: Auto merged scripts/mysqld_safe.sh: Auto merged scripts/mysqlhotcopy.sh: Auto merged sql/field.h: Auto merged sql/field_conv.cc: Auto merged sql/ha_innodb.h: Auto merged sql/item.cc: Auto merged sql/sql_db.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/table.cc: Auto merged tests/grant.res: Auto merged Build-tools/Do-compile: merge Docs/manual.texi: merge configure.in: merge mysql-test/r/distinct.result: merge mysql-test/r/null_key.result: merge sql/ha_innodb.cc: merge sql/item.h: merge sql/log.cc: merge sql/mysqld.cc: merge support-files/mysql.spec.sh: merge
Diffstat (limited to 'innobase/lock')
-rw-r--r--innobase/lock/lock0lock.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/innobase/lock/lock0lock.c b/innobase/lock/lock0lock.c
index ebd063b6ca5..866fe556af9 100644
--- a/innobase/lock/lock0lock.c
+++ b/innobase/lock/lock0lock.c
@@ -2011,6 +2011,19 @@ lock_grant(
ut_ad(mutex_own(&kernel_mutex));
lock_reset_lock_and_trx_wait(lock);
+
+ if (lock_get_mode(lock) == LOCK_AUTO_INC) {
+
+ if (lock->trx->auto_inc_lock != NULL) {
+ fprintf(stderr,
+ "InnoDB: Error: trx already had an AUTO-INC lock!\n");
+ }
+
+ /* Store pointer to lock to trx so that we know to
+ release it at the end of the SQL statement */
+
+ lock->trx->auto_inc_lock = lock;
+ }
if (lock_print_waits) {
printf("Lock wait for trx %lu ends\n",
@@ -3763,6 +3776,8 @@ lock_print_info(
mtr_t mtr;
if (buf_end - buf < 600) {
+ sprintf(buf, "... output truncated!\n");
+
return;
}
@@ -3787,6 +3802,9 @@ lock_print_info(
if ((ulint)(buf_end - buf)
< 100 + strlen(lock_latest_err_buf)) {
+ lock_mutex_exit_kernel();
+ sprintf(buf, "... output truncated!\n");
+
return;
}
@@ -3794,6 +3812,9 @@ lock_print_info(
}
if (buf_end - buf < 600) {
+ lock_mutex_exit_kernel();
+ sprintf(buf, "... output truncated!\n");
+
return;
}
@@ -3805,6 +3826,9 @@ lock_print_info(
while (trx) {
if (buf_end - buf < 900) {
+ lock_mutex_exit_kernel();
+ sprintf(buf, "... output truncated!\n");
+
return;
}
@@ -3842,6 +3866,9 @@ loop:
}
if (buf_end - buf < 900) {
+ lock_mutex_exit_kernel();
+ sprintf(buf, "... output truncated!\n");
+
return;
}
@@ -3852,6 +3879,9 @@ loop:
buf += strlen(buf);
if (buf_end - buf < 500) {
+ lock_mutex_exit_kernel();
+ sprintf(buf, "... output truncated!\n");
+
return;
}
@@ -3906,6 +3936,9 @@ loop:
}
if (buf_end - buf < 500) {
+ lock_mutex_exit_kernel();
+ sprintf(buf, "... output truncated!\n");
+
return;
}