WL#6835: InnoDB: GCS Replication: Deterministic Deadlock Handling (High Prio Transactions in InnoDB)

Affects: Server-Prototype Only   —   Status: Complete

EXECUTIVE SUMMARY
=================

In database state machine (DBSM), once a transaction is certified,
it MUST commit.
It cannot abort in one replica and be committed in another. This is part 
of the DBSM termination protocol. This task designs and implements 
high prio transactions that shall never be chosen to abort on a 
deadlock scenario. They will always commit (unless the database is 
in serious meltdown). Typically, transactions that have passed the
certification test need to commit (and eventually break the locks of
locally running transaction - ie, those that are still in the optimistic
execution phase).

CHALLENGES
==========

1. It can be that some commands require breaking locks in MDL in 
   addition to the locks in InnoDB. This needs to be investigated.

2. Check that InnoDB does not have intermediate locking (lockset 
   matches the write set used in certification).