Project

General

Profile

Subtask #2739

Feature #2611: mon: Single-Paxos

Subtask #2621: mon: Single-Paxos: synchronize the MonitorDBStore of oblivious monitor

mon: Single-Paxos: Sync: Synchronize the store of a drifted monitor

Added by Joao Eduardo Luis over 11 years ago. Updated about 11 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Joao Eduardo Luis
Category:
Monitor
Target version:
% Done:

100%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

Synchronize the store of a monitor (mon.X) that drifted away from the system (say, it failed for a considerable amount of time) with the store of a quorum monitor (mon.Y).

This will be done by sharing keys and values in chunks, sending them from mon.Y to mon.X, which should then apply them.

These chunks will be encoded transactions.

Once mon.Y finishes sending all the available keys and values, it will then send all the Paxos versions available over to mon.X. This will ensure that mon.X ends up with a valid state.


Subtasks

Subtask #2757: mon: Single-Paxos: Sync: pack chunks of the MonitorDBStore into transactionsResolvedJoao Eduardo Luis

Subtask #2756: mon: Single-Paxos: LevelDBStore: Make iterator thread-safeResolvedJoao Eduardo Luis

Subtask #2758: mon: Single-Paxos: Sync: Extend the in-memory mock-up of KeyValueDB to support the safe iteratorResolvedJoao Eduardo Luis

Subtask #2805: mon: Single-Paxos: Sync: Create a test unit to verify the correctness of the whole-space and snapshot iteratorsResolvedJoao Eduardo Luis

History

#1 Updated by Joao Eduardo Luis about 11 years ago

  • Status changed from New to Resolved

This is all done. There is some much necessary history cleanup, especially given that there were a couple of bug fixes in the last days.

Also available in: Atom PDF