On Thu, Sep 1, 2016 at 12:31 PM, Kristian Nielsen <knielsen@knielsen-hq.org> wrote:
Michael Widenius <michael.widenius@gmail.com> writes:
This is because of errorneous merge. The original code:
if (waitee_buf_ptr) { lock_report_waiters_to_mysql(waitee_buf_ptr, start_mysql_thd, victim_trx_id);
The bb-10.2-jan code:
if (victim_trx && waitee_buf_ptr) { lock_report_waiters_to_mysql(waitee_buf_ptr, start_mysql_thd, victim_trx->id);
So if victim_trx is NULL the waits are not reported to parallel replication at all, causing the stalls and/or hangs. victim_trx is NULL unless InnoDB itself detects a deadlock.
Kristian, thanks for pointing this to me, I was not sure what this function was doing, so I merged it incorrectly. R: Jan