• Konstantin Osipov's avatar
    Backport of: · 4ae05129
    Konstantin Osipov authored
    ------------------------------------------------------------
    revno: 2630.13.16
    committer: Davi Arnaut <Davi.Arnaut@Sun.COM>
    branch nick: WL#4284
    timestamp: Sat 2008-07-26 13:38:20 -0300
    message:
    WL#4284: Transactional DDL locking
    
    SQL statements' effect on transactions.
    
    Currently the MySQL server and its storage engines are not
    capable of rolling back operations that define or modify data
    structures (also known as DDL statements) or operations that
    alter any of the system tables (the mysql database). Allowing
    these group of statements to participate in transactions
    is unfeasible at this time (since rollback has no effect
    whatsoever on them) and goes against the design of our metadata
    locking subsystem.
    
    The solution is to issue implicit commits before and after
    those statements execution. This effectively confines each of
    those statements to its own special transaction and ensures
    that metadata locks taken during this special transaction
    are not leaked into posterior statements/transactions.
    4ae05129
sql_parse.cc 239 KB