]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/scrub: fix pg_scrubber.h diagram 69966/head
authorRonen Friedman <rfriedma@redhat.com>
Mon, 6 Jul 2026 16:19:25 +0000 (19:19 +0300)
committerRonen Friedman <rfriedma@redhat.com>
Mon, 6 Jul 2026 16:19:25 +0000 (19:19 +0300)
The diagram depicts the relationships between the main
Scrubber components and interfaces. The previous version of
the diagram was outdated, and it is now fixed to match the code.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
src/osd/scrubber/pg_scrubber.h

index 9ee7d69e4c7161fc8b71cc51a53e8ded38514ed8..ba6decfcbb86a379daf804dac3a56e5ed4f0193c 100644 (file)
@@ -8,57 +8,64 @@
 
 Main Scrubber interfaces:
 
-┌──────────────────────────────────────────────┬────┐
-│                                              │    │
-│                                              │    │
-│       PG                                     │    │
-│                                              │    │
-│                                              │    │
-├──────────────────────────────────────────────┘    │
-│                                                   │
-│       PrimaryLogPG                                │
-└────────────────────────────────┬──────────────────┘
-                                 │
-                                 │
-                                 │ owns & uses
-                                 │
-                                 │
-                                 │
-┌────────────────────────────────▼──────────────────┐
-│               <<ScrubPgIF>>                       │
-└───────────────────────────▲───────────────────────┘
-                            │
-                            │
-                            │implements
-                            │
-                            │
-                            │
-┌───────────────────────────┴───────────────┬───────┐
-│                                           │       │
-│         PgScrubber                        │       │
-│                                           │       │
-│                                           │       ├───────┐
-├───────────────────────────────────────────┘       │       │
-│                                                   │       │
-│         PrimaryLogScrub                           │       │
-└─────┬───────────────────┬─────────────────────────┘       │
-      │                   │                         implements
-      │    owns & uses    │                                 │
-      │                   │       ┌─────────────────────────▼──────┐
-      │                   │       │    <<ScrubMachineListener>>    │
-      │                   │       └─────────▲──────────────────────┘
-      │                   │                 │
-      │                   │                 │
-      │                   ▼                 │
-      │    ┌────────────────────────────────┴───────┐
-      │    │                                        │
-      │    │        ScrubMachine                    │
-      │    │                                        │
-      │    └────────────────────────────────────────┘
+┌──────────────────────────────────────────────────┬────┐
+│                                                  │    │
+│       PG                                         │    │
+│       (implements <<PgScrubBeListener>>)         │    │
+│                                                  │    │
+├──────────────────────────────────────────────────┘    │
+│                                                       │
+│       PrimaryLogPG                                    │
+└──────────────────────────┬────────────────────────────┘
+                           │
+                           │ owns & uses
+                           │
+┌──────────────────────────▼────────────────────────────┐
+│                   <<ScrubPgIF>>                       │
+└──────────────────────────▲────────────────────────────┘
+                           │
+                           │ implements
+                           │
+┌──────────────────────────┴──────────────┬──────┐        ┌──────────────────────────────────┐
+│                                         │      │        │                                  │
+│       PgScrubber                        │      ├───────►│    <<ScrubMachineListener>>      │
+│                                         │      │        │                                  │
+│                                         │      │        └──────────────────────────────▲───┘
+│                                         │      │implements                             │
+│                                         │      │        ┌──────────────────────────┐   │
+│                                         │      ├───────►│    <<ScrubBeListener>>   │   │
+│                                         │      │        │                          │   │
+├─────────────────────────────────────────┘      │        └─────────────────▲────────┘   │
+│                                                │                          │            │
+│       PrimaryLogScrub                          │                     uses │       uses │
+│                                                │                          │            │
+└─────┬──────────────────┬──────────────┬────────┘                          │            │
+      │                  │              │                                   │            │
+      │   owns & uses    │  owns & uses │  owns & uses                      │            │
+      │                  │              │                                   │            │
+      │                  │        ┌─────▼──────────────────────────┐        │            │
+      │                  │        │                                ├────────┘            │
+      │                  │        │    ScrubBackend                │                     │
+      │                  │        │    (also uses                  │                     │
+      │                  │        │     <<PgScrubBeListener>>)     │                     │
+      │                  │        │                                │                     │
+      │                  │        └────────────────────────────────┘                     │
+      │                  │                                                               │
+      │    ┌─────────────▼─────────────────────────────┐                                 │
+      │    │             <<ScrubFsmIf>>                │                                 │
+      │    └────────────────────▲──────────────────────┘                                 │
+      │                         │                                                        │
+      │                         │ implements                                             │
+      │                         │                                                        │
+      │    ┌────────────────────┴──────────────────────┐                                 │
+      │    │                                           ├─────────────────────────────────┘
+      │    │        ScrubMachine                       │
+      │    │                                           │
+      │    └───────────────────────────────────────────┘
       │
   ┌───▼─────────────────────────────────┐
   │                                     │
-  │       ScrubStore                    │
+  │       Scrub::Store                  │
   │                                     │
   └─────────────────────────────────────┘