• Denis Protivensky's avatar
    MDEV-32738: Don't roll back high-prio txn waiting on a lock in InnoDB · b7718a1c
    Denis Protivensky authored
    DML transactions on FK-child tables also get table locks
    on FK-parent tables. If there is a DML transaction holding
    such a lock, and a TOI transaction starts, the latter
    BF-aborts the former and puts itself into a waiting state.
    If at this moment another DML transaction on FK-child table
    starts, it doesn't check that the transaction waiting on
    a parent table lock is TOI, and it erroneously BF-aborts
    the waiting TOI transaction.
    
    The fix: don't roll back high-priority transaction waiting
    on a lock in InnoDB, instead roll back an incoming DML
    transaction.
    Signed-off-by: default avatarJulius Goryavsky <julius.goryavsky@mariadb.com>
    b7718a1c
lock0lock.cc 195 KB