Commit cf22c32c authored by Julien Muchembled's avatar Julien Muchembled

Document cell states

parent 04f72a4c
...@@ -8,7 +8,6 @@ RC = Release Critical (for next release) ...@@ -8,7 +8,6 @@ RC = Release Critical (for next release)
- Clarify the use of each error codes: - Clarify the use of each error codes:
- NOT_READY removed (connection kept opened until ready) - NOT_READY removed (connection kept opened until ready)
- Split PROTOCOL_ERROR (BAD IDENTIFICATION, ...) - Split PROTOCOL_ERROR (BAD IDENTIFICATION, ...)
RC - Clarify cell state signification
- Add docstrings (think of doctests) - Add docstrings (think of doctests)
Code Code
......
...@@ -80,10 +80,21 @@ class NodeStates(Enum): ...@@ -80,10 +80,21 @@ class NodeStates(Enum):
NodeStates = NodeStates() NodeStates = NodeStates()
class CellStates(Enum): class CellStates(Enum):
# Normal state: cell is writable/readable, and it isn't planned to drop it.
UP_TO_DATE = Enum.Item(1) UP_TO_DATE = Enum.Item(1)
# Write-only cell. Last transactions are missing because storage is/was down
# for a while, or because it is new for the partition. It usually becomes
# UP_TO_DATE when replication is done.
OUT_OF_DATE = Enum.Item(2) OUT_OF_DATE = Enum.Item(2)
# Same as UP_TO_DATE, except that it will be discarded as soon as another
# node finishes to replicate it. It means a partition is moved from 1 node
# to another.
FEEDING = Enum.Item(3) FEEDING = Enum.Item(3)
# Not really a state: only used in network packets to tell storages to drop
# partitions.
DISCARDED = Enum.Item(4) DISCARDED = Enum.Item(4)
# A check revealed that data differs from other replicas. Cell is neither
# readable nor writable.
CORRUPTED = Enum.Item(5) CORRUPTED = Enum.Item(5)
CellStates = CellStates() CellStates = CellStates()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment