• Marko Mäkelä's avatar
    Follow-up fixes for MDEV-10139 Support for InnoDB SEQUENCE objects · 8acf4d6f
    Marko Mäkelä authored
    Because SEQUENCE objects or NO_ROLLBACK tables do not support locking
    or MVCC or transactions, avoid starting a transaction.
    
    row_upd_step(): Do not start a transaction. Let the caller do that.
    
    que_thr_step(): Call trx_start_if_not_started_xa() for QUE_NODE_UPDATE.
    (The InnoDB SQL parser is not used for accessing NO_ROLLBACK tables.)
    
    row_ins_step(): Correct a too strict assertion and comment about
    concurrency. Multiple concurrent readers are allowed.
    
    row_update_for_mysql_using_upd_graph(): Do not start the transaction
    for NO_ROLLBACK tables.
    
    row_search_mvcc(): For NO_ROLLBACK tables, skip locking even inside
    LOCK TABLES. Only call trx_start_if_not_started() at the start
    of a statement, not for each individual request.
    8acf4d6f
que0que.cc 29.4 KB