Many files:

Fix hang introduced by selective deadlock resolution
srv0srv.c, row0mysql.c:
  Fix hang introduced by selective deadlock resolution + corruption caused by lock timeout or sel deadl res in ON DELETE CASCADE


innobase/include/que0que.h:
  Fix hang introduced by selective deadlock resolution
innobase/include/trx0trx.h:
  Fix hang introduced by selective deadlock resolution
innobase/include/ut0ut.h:
  Fix hang introduced by selective deadlock resolution
innobase/lock/lock0lock.c:
  Fix hang introduced by selective deadlock resolution
innobase/log/log0log.c:
  Fix hang introduced by selective deadlock resolution
innobase/que/que0que.c:
  Fix hang introduced by selective deadlock resolution
innobase/row/row0mysql.c:
  Fix hang introduced by selective deadlock resolution + corruption caused by lock timeout or sel deadl res in ON DELETE CASCADE
innobase/srv/srv0srv.c:
  Fix hang introduced by selective deadlock resolution + corruption caused by lock timeout or sel deadl res in ON DELETE CASCADE
innobase/trx/trx0sys.c:
  Fix hang introduced by selective deadlock resolution
innobase/trx/trx0trx.c:
  Fix hang introduced by selective deadlock resolution
This commit is contained in:
unknown 2002-11-07 14:47:25 +02:00
commit 4fa5e50edb
10 changed files with 81 additions and 24 deletions

View file

@ -1727,6 +1727,7 @@ index->table_name);
}
trx->que_state = TRX_QUE_LOCK_WAIT;
trx->was_chosen_as_deadlock_victim = FALSE;
trx->wait_started = time(NULL);
ut_a(que_thr_stop(thr));
@ -3173,7 +3174,8 @@ lock_deadlock_recursive(
err_buf += sprintf(err_buf,
"*** WE ROLL BACK TRANSACTION (1)\n");
wait_lock->trx->error_state = DB_DEADLOCK;
wait_lock->trx->was_chosen_as_deadlock_victim
= TRUE;
lock_cancel_waiting_and_release(wait_lock);
@ -3353,6 +3355,7 @@ table->name);
}
trx->que_state = TRX_QUE_LOCK_WAIT;
trx->was_chosen_as_deadlock_victim = FALSE;
trx->wait_started = time(NULL);
ut_a(que_thr_stop(thr));