github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/docs/RFCS/20191014_savepoints/txnbase.puml (about)

     1  @startuml
     2  box "On the gateway node"
     3    participant SQL
     4    participant RootTxn
     5  end box
     6  participant cluster
     7  
     8  note over SQL: SQL transaction starts
     9  create RootTxn
    10  SQL -> RootTxn : client.NewTxn(RootTxnn)
    11  ...
    12  note over SQL: during query execution
    13  SQL -> RootTxn : txn.Run(client.Batch)
    14  RootTxn -> cluster : txn.sender.Send(roachpb.BatchRequest)
    15  ...
    16  cluster --> RootTxn : BatchResponse
    17  RootTxn --> SQL : Batch modified in-place
    18  ...
    19  note over SQL: when SQL txn completes
    20  SQL -> RootTxn : Commit/Rollback/CleanupOnError
    21  @enduml