Skip to content

Commit db181e5

Browse files
authored
Merge pull request ceph#60510 from Matan-B/wip-matanb-backfill-crimson-docs
doc/dev/crimson: Add BackfillMachine state graph Reviewed-by: Samuel Just <[email protected]> Reviewed-by: Anthony D'Atri <[email protected]>
2 parents ffa01e3 + c29c1e7 commit db181e5

File tree

4 files changed

+170
-5
lines changed

4 files changed

+170
-5
lines changed
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
===============
2+
BackfillMachine
3+
===============
4+
5+
6+
In Crimson, backfill is implemented with `Boost State Chart <https://www.boost.org/doc/libs/1_86_0/libs/statechart/doc/>`_.
7+
8+
.. //TODO: Once the implementation is settled:
9+
.. * Explain exceptional states once we finish working on this code
10+
.. * Explain example happy path flow (code walkthorugh?)
11+
.. * https://tracker.ceph.com/issues/68728
12+
13+
A sample of the recent state model:
14+
15+
.. note:: ``Cancelled`` and ``Crushed`` states are not included in the
16+
following graph in order to make it easier to follow:
17+
18+
* **Any** state is able to transit into ``Crushed``.
19+
20+
* **Any** state (except from ``Initial`` and ``Waiting``) can transit into ``Cancelled``
21+
22+
.. image:: crimson_backfillmachine.svg
23+
24+
25+
In similarly to :doc:`/dev/peering` a copy of the latest BackfillMachine
26+
state model can be genereated using the `gen_state_diagram.py <https://github.com/ceph/ceph/blob/master/doc/scripts/gen_state_diagram.py>`_
Lines changed: 135 additions & 0 deletions
Loading

doc/dev/crimson/index.rst

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,11 @@ Crimson developer documentation
77
.. rubric:: Contents
88

99
.. toctree::
10-
:glob:
11-
12-
*
10+
:maxdepth: 1
1311

12+
Crimson <crimson>
13+
OSDState <osd>
14+
The ClientRequest Pipeline <pipeline>
15+
Error Handling <error-handling>
16+
BackfillMachine <backfillmachine>
17+
PoseidonStore <poseidonstore>

doc/dev/crimson/osd.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
osd
2-
===
1+
OSDState
2+
========
33

44
.. graphviz::
55

0 commit comments

Comments
 (0)