]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/tools/rbd_mirror/image_replayer/BootstrapRequest.h
update sources to v12.1.3
[ceph.git] / ceph / src / tools / rbd_mirror / image_replayer / BootstrapRequest.h
index cebd568972ba88efaf9c21ed248d30646d54e6d8..6c67222d4abd24cf3ecb16f3a9213bccda825088 100644 (file)
@@ -92,57 +92,55 @@ private:
    * <start>
    *    |
    *    v
-   * GET_REMOTE_TAG_CLASS * * * * * * * * * * * * * * * *
-   *    |                                               *
-   *    v                                               *
-   * GET_CLIENT * * * * * * * * * * * * * * * * * * * * *
-   *    |                                               *
-   *    v (skip if not needed)                          * (error)
-   * REGISTER_CLIENT  * * * * * * * * * * * * * * * * * *
-   *    |                                               *
-   *    v                                               *
-   * OPEN_REMOTE_IMAGE  * * * * * * * * * * * * * * * * *
-   *    |                                               *
-   *    v                                               *
-   * IS_PRIMARY * * * * * * * * * * * * * * * * * * * * *
-   *    |                                               *
-   *    | (remote image primary)                        *
-   *    \----> OPEN_LOCAL_IMAGE * * * * * * * * * * * * *
-   *    |         |   .   ^                             *
-   *    |         |   .   |                             *
-   *    |         |   .   \-----------------------\     *
-   *    |         |   .                           |     *
-   *    |         |   . (image sync requested)    |     *
-   *    |         |   . . > REMOVE_LOCAL_IMAGE  * * * * *
-   *    |         |   .                   |       |     *
-   *    |         |   . (image doesn't    |       |     *
-   *    |         |   .  exist)           v       |     *
-   *    |         |   . . > CREATE_LOCAL_IMAGE  * * * * *
-   *    |         |             |                 |     *
-   *    |         |             \-----------------/     *
-   *    |         |                                     *
-   *    |         v (skip if not needed)                *
-   *    |      UPDATE_CLIENT_IMAGE  * * * * *           *
-   *    |         |                         *           *
-   *    |         v (skip if not needed)    *           *
-   *    |      GET_REMOTE_TAGS  * * * * * * *           *
-   *    |         |                         *           *
-   *    |         v (skip if not needed)    v           *
-   *    |      IMAGE_SYNC * * * > CLOSE_LOCAL_IMAGE     *
-   *    |         |                         |           *
-   *    |         \-----------------\ /-----/           *
-   *    |                            |                  *
-   *    |                            |                  *
-   *    | (skip if not needed)       |                  *
-   *    \----> UPDATE_CLIENT_STATE  *|* * * * * * * * * *
-   *                |                |                  *
-   *    /-----------/----------------/                  *
-   *    |                                               *
-   *    v                                               *
-   * CLOSE_REMOTE_IMAGE < * * * * * * * * * * * * * * * *
-   *    |
-   *    v
-   * <finish>
+   * GET_REMOTE_TAG_CLASS * * * * * * * * * * * * * * * * * *
+   *    |                                                   * (error)
+   *    v                                                   *
+   * OPEN_REMOTE_IMAGE  * * * * * * * * * * * * * * * * * * *
+   *    |                                                   *
+   *    v                                                   *
+   * GET_CLIENT * * * * * * * * * * * * * * * * * * * * *   *
+   *    |                                               *   *
+   *    |/----------------------------------------------*---*---\
+   *    v (skip if not needed)                          *   *   |
+   * REGISTER_CLIENT  * * * * * * * * * * * * * * * * * *   *   |
+   *    |                                               *   *   |
+   *    v                                               *   *   |
+   * IS_PRIMARY * * * * * * * * * * * * * * * * * * * * *   *   |
+   *    |                                               *   *   |
+   *    | (remote image primary, no local image id)     *   *   |
+   *    \----> UPDATE_CLIENT_IMAGE  * * * * * * * * * * *   *   |
+   *    |         |                                     *   *   |
+   *    |         v                                     *   *   |
+   *    \----> CREATE_LOCAL_IMAGE * * * * * * * * * * * *   *   |
+   *    |         |                                     *   *   |
+   *    |         v                                     *   *   |
+   *    | (remote image primary)                        *   *   |
+   *    \----> OPEN_LOCAL_IMAGE * * * * * * * * * * * * *   *   |
+   *    |         |   .                                 *   *   |
+   *    |         |   . (image doesn't exist)           *   *   |
+   *    |         |   . . > UNREGISTER_CLIENT * * * * * *   *   |
+   *    |         |             |                       *   *   |
+   *    |         |             \-----------------------*---*---/
+   *    |         |                                     *   *
+   *    |         v (skip if not needed)                *   *
+   *    |      GET_REMOTE_TAGS  * * * * * * *           *   *
+   *    |         |                         *           *   *
+   *    |         v (skip if not needed)    v           *   *
+   *    |      IMAGE_SYNC * * * > CLOSE_LOCAL_IMAGE     *   *
+   *    |         |                         |           *   *
+   *    |         \-----------------\ /-----/           *   *
+   *    |                            |                  *   *
+   *    |                            |                  *   *
+   *    | (skip if not needed)       |                  *   *
+   *    \----> UPDATE_CLIENT_STATE  *|* * * * * * * * * *   *
+   *                |                |                  *   *
+   *    /-----------/----------------/                  *   *
+   *    |                                               *   *
+   *    v                                               *   *
+   * CLOSE_REMOTE_IMAGE < * * * * * * * * * * * * * * * *   *
+   *    |                                                   *
+   *    v                                                   *
+   * <finish> < * * * * * * * * * * * * * * * * * * * * * * *
    *
    * @endverbatim
    */
@@ -199,8 +197,8 @@ private:
   void open_local_image();
   void handle_open_local_image(int r);
 
-  void remove_local_image();
-  void handle_remove_local_image(int r);
+  void unregister_client();
+  void handle_unregister_client(int r);
 
   void create_local_image();
   void handle_create_local_image(int r);