AntidoteDB / AntidoteDB/antidote

Two messages from Antidote's interface to the transaction coordinator to commit a transaction

Abierto
#259 0 comentarios 0 reacciones 0 asignados Ver en GitHub
optimization
Lenguaje dominante
Erlang
Estrellas
892
Forks
92
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

In the current state, when one wants to commit an interactive transaction, a client will issue a "commit_transaction" command, that will execute the 2PC commit protocol as follows:

1. the gen_server running the interface sends a prepare message to the coordinator
2. coord sends prepare message to the vnodes that performed updates
3. vnodes respond to the coordinator
4. coordinator responds to the gen server that runs the interface
5. the gen server sends a commit message to the coord
6. coord sends commit message to the vnodes that performed updates
7. vnodes respond to the coordinator
8. the coordinator responds to the gen_server running the interface

https://github.com/SyncFree/antidote/blob/master/src/antidote.erl#L98
https://github.com/SyncFree/antidote/blob/master/src/antidote.erl#L446

I propose removing steps 5 and 6.
Furthermore, I propose replying to the client after 6, after logging the decision to commit and the commit time at the txn coordinator for fault-tolerance.

This will reduce the latency of the transaction.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.