Skip to content
  • Aakanksha Verma's avatar
    cf3e608f
    Bug #27212129 [ERROR] INNODB: A RECORD LOCK WAIT HAPPENS IN A DICTIONARY · cf3e608f
    Aakanksha Verma authored
    OPERATION. INDEX `ID_
    
    PROBLEM
    
    This bug is a regression of bug#26390658. When two transactions try to
    do alter table partition by (and are trying to do rename table
    essentially),one of the transactions ends up in a lock wait trying to
    take a lock on record of innodb stats table as the other is holding a
    lock on the same record of the stats table as this transaction hasn't
    committed yet. A situation like this where in a transaction is made to
    wait for record lock of system table and is dictionary operation, innodb
    crashes the server.The problem is that the transaction that is done with
    rename table and is holding onto record locks that can be released is
    not able to do so because it is not yet committed .Therefore causing the
    lock wait and crash.
    
    FIX
    
    Solution is to let all the partitions rename to finish and commit
    transaction, then proceed with updating of stats table after rename.
    
    Reviewed by: bin su <bin.x.su@oracle.com>
    RB: 18205
    
    (cherry picked from commit 3b9ab1b0a3bd24151e74e73bcdfb098b969ca747)
    cf3e608f
    Bug #27212129 [ERROR] INNODB: A RECORD LOCK WAIT HAPPENS IN A DICTIONARY
    Aakanksha Verma authored
    OPERATION. INDEX `ID_
    
    PROBLEM
    
    This bug is a regression of bug#26390658. When two transactions try to
    do alter table partition by (and are trying to do rename table
    essentially),one of the transactions ends up in a lock wait trying to
    take a lock on record of innodb stats table as the other is holding a
    lock on the same record of the stats table as this transaction hasn't
    committed yet. A situation like this where in a transaction is made to
    wait for record lock of system table and is dictionary operation, innodb
    crashes the server.The problem is that the transaction that is done with
    rename table and is holding onto record locks that can be released is
    not able to do so because it is not yet committed .Therefore causing the
    lock wait and crash.
    
    FIX
    
    Solution is to let all the partitions rename to finish and commit
    transaction, then proceed with updating of stats table after rename.
    
    Reviewed by: bin su <bin.x.su@oracle.com>
    RB: 18205
    
    (cherry picked from commit 3b9ab1b0a3bd24151e74e73bcdfb098b969ca747)
Loading