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