THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Additionally, since log replication and operation application are separated, the latency of an update will not depend on the complexity of the operation itself (for example, the number of secondary indexes used for a given table).
Among others, the replication module provides the following interfaces to the storage layer:
readIndex()
operation that returns the most up-to-date committed (durable) operation index in the replication group providing linearizability. readIndex()
performance varies from protocol to protocol: for canonical Raft, this operation involves a round-trip to the majority of group members from the current leader, while in PacificA primary node can return the index locally as long as the primary lease is valid. If a node has received and applied an operation with an index at least as large as the one returned by readIndex()
, the state can be safely read locally.Once we have a replication primitive in place, we can achieve the following goals:
i
should be expressed as partition(i).replicate(new WriteBatch(writeMap))
. The replicate operation may fail, but the write will be applied or not as a whole within the replication groupPESSIMISTIC
and OPTIMISTIC
concurrency modes, which will match to PESSIMISTIC REPEATABLE_READ
and OPTIMISTIC SERIALIZABLE
modes of Ignite 2.x.The transactional protocol operates as follows:
TBD
...