Browse Source

Bug #24347476 HIGH PRIORITY TRX FAILED TO KILL LOW PRIORITY TRX WHEN FOREIGN KEYS ARE INVOLVED

Problem:
=======
High priority transaction can't able to kill the blocking transaction
when foreign keys are involved. trx_kill_blocking() missing while checking
the foreign key constraint.

Fix:
===
Add trx_kill_blocking() while checking for the foreign key constraint.

Reviewed-by: Debarun Banerjee <debarun.banerjee@oracle.com>
RB: 13579
pull/365/head
Thirunarayanan Balathandayuthapani 9 years ago
committed by Marko Mäkelä
parent
commit
f5759bd8d8
  1. 2
      storage/innobase/row/row0ins.cc

2
storage/innobase/row/row0ins.cc

@ -1878,6 +1878,8 @@ do_possible_lock_wait:
my_atomic_addlint(
&check_table->n_foreign_key_checks_running, 1);
trx_kill_blocking(trx);
lock_wait_suspend_thread(thr);
thr->lock_state = QUE_THR_LOCK_NOLOCK;

Loading…
Cancel
Save