summaryrefslogtreecommitdiff
path: root/storage/innobase/include/trx0trx.h
diff options
context:
space:
mode:
authorSunny Bains <Sunny.Bains@Oracle.Com>2010-04-28 06:47:47 +1000
committerSunny Bains <Sunny.Bains@Oracle.Com>2010-04-28 06:47:47 +1000
commit248dd65fe76e8fcee1f7eed59f94d331bb000dea (patch)
tree3ba21a510fbd6e1627140731b13b3b16edc9a6a2 /storage/innobase/include/trx0trx.h
parente2a3bb5acc3a75e4aa4e382eb048db728eae7cdd (diff)
downloadmariadb-git-248dd65fe76e8fcee1f7eed59f94d331bb000dea.tar.gz
Fix bug introduced by r3038. When a transaction is rolled back by the
lock monitor thread, it may have locks that are granted to waited to waiting transactions. These waiting transactions will need to be woken up but their trx->lock_wait_timeout flag will be FALSE causing the old code to break. What we need is a flag that covers the entire lock release process not individual transactions. The fix is to move the flag out of trx_t and into srv_sys_t.
Diffstat (limited to 'storage/innobase/include/trx0trx.h')
-rw-r--r--storage/innobase/include/trx0trx.h10
1 files changed, 0 insertions, 10 deletions
diff --git a/storage/innobase/include/trx0trx.h b/storage/innobase/include/trx0trx.h
index 093b53d9543..6872fb463c0 100644
--- a/storage/innobase/include/trx0trx.h
+++ b/storage/innobase/include/trx0trx.h
@@ -647,16 +647,6 @@ struct trx_struct{
TRX_QUE_LOCK_WAIT, this points to
the lock request, otherwise this is
NULL */
- ibool lock_wait_timeout;
- /* when this transaction is rolled
- back because the lock wait timed out.
- We use this flag to distinguish between
- a wait time out detected by the lock
- monitor thread vs other code paths. For
- the former we already have the the
- srv_sys->mutex locked. For the other
- cases we need to acquire it explicitly
- when releasing a suspended thread. */
ibool was_chosen_as_deadlock_victim;
/* when the transaction decides to wait
for a lock, it sets this to FALSE;