Hi,

Assume the following:


   - I have a transaction coordinator and two primary nodes with 0 backup
   nodes.
   - Persistence store is enabled.
   - I'm running a transaction in pessimistic mode with serializable
   isolation.

I have these questions:

   1. What exactly happens during the prepare phase? Only acquiring locks
   on the two primary nodes? Or do the primary nodes themselves, in addition
   to acquiring locks, write to their respective WAL a TxRecord with a "begin
   prepare" info?
   2. Assume locks have been acquired successfully, would the nodes then
   write a "prepared" TxRecord to WAL before returning a "Yes" vote to
   coordinator?
   3. When the coordinator sends a commit message, would each node write
   the key-values to the DataRecord and a commit to the TxRecord before
   returning to coordinator?


Overall, I'm trying to understand what happens exactly during prepare and
commit phases and when the key-values involved in the transaction are
actually written; as well as the exact updates that are written to the WAL
files in each phase.

appreciate your response.

Thanks,

Reply via email to