• Jon Olav Hauglid's avatar
    Bug #57663 Concurrent statement using stored function and DROP DATABASE · fc0e7438
    Jon Olav Hauglid authored
               breaks SBR
    
    The problem was that DROP DATABASE ignored any metadata locks on stored
    functions and procedures held by other connections. This made it
    possible for DROP DATABASE to drop functions/procedures that were in use
    by other connections and therefore break statement based replication.
    (DROP DATABASE could appear in the binlog before a statement using a
    dropped function/procedure.)
    
    This problem was an issue left unresolved by the patch for Bug#30977
    where metadata locks for stored functions/procedures were introduced.
    
    This patch fixes the problem by making sure DROP DATABASE takes
    exclusive metadata locks on all stored functions/procedures to be
    dropped.
    
    Test case added to sp-lock.test.
    fc0e7438
sp-lock.test 32.1 KB