Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. GridNearTxPrepareRequest / GridDhtTxPrepareRequest
  2. GridNearTxPrepareResponse / GridDhtTxPrepareResponse
  3. GridNearTxFinishRequest / GridDhtTxFinishRequest

Those messages are wrapped in ConsistentCutMarkerMessage  that is prepared right before sending message on other node. They used the current ConsistentCutMarker for setting the marker.

Code Block
languagejava
titleConsistentCutMarkerMessage
class ConsistentCutMarkerMessage {
	Message msg;

	ConsistentCutMarker marker;
}

Also some messages require to be signed with additional ConsistentCutMarker to check it them on primary/backup node:.

  1. GridNearTxFinishRequest / GridDhtTxFinishRequest
  2. GridNearTxPrepareResponse / GridDhtTxPrepareResponse (for 1PC algorithm).

Those messages are wrapped in ConsistentCutMarkerFinishMessage  that is prepared right before transaction starts committing on first committing node. They used the current ConsistentCutMarker  for setting the txMarker . txMarker  can be null, if transaction starts committing before ConsistentCut starts.

Code Block
languagejava
titleConsistentCutMarkerFinishMessage
class ConsistentCutMarkerFinishMessage extends ConsistentCutMarkerMessage {
    @Nullable ConsistentCutMarker txMarker;
}


WAL records

There are 2 records: ConsistentCutStartRecord  for Start event and ConsistentCutFinishRecord for Finish event. 

...