]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
crimson/osd/: restructure client and peering operation handling
authorSamuel Just <sjust@redhat.com>
Tue, 11 Jun 2019 00:31:20 +0000 (17:31 -0700)
committerSamuel Just <sjust@redhat.com>
Thu, 20 Jun 2019 20:51:25 +0000 (13:51 -0700)
commite6c6de335b6a662b83749897bdbee697a2d288cc
tree16cc87b117eeb3ffdec7b67d5b4d21a18456207d
parentbc48f2dfb168b74cf8f00d4064b91b32f3c64ad5
crimson/osd/: restructure client and peering operation handling

This patch:
* Breaks pg map handling out into a separate module (pg_map.*)
* Breaks osdmap waiting into a separate module
  - Ops actually need to wait twice (potentially): once at
    the osd and a second time at the pg.  The same structure
    is used for both.
* Op ordering is enforced via OrderedExclusivePipelineStages
  defined in osd_operations.h.
  - Peering and client ops each define a pipeline section
    centered on the connection as well as one centered on the
    pg.

Signed-off-by: Samuel Just <sjust@redhat.com>
18 files changed:
src/crimson/osd/CMakeLists.txt
src/crimson/osd/osd.cc
src/crimson/osd/osd.h
src/crimson/osd/osd_connection_priv.h [new file with mode: 0644]
src/crimson/osd/osd_operations/client_request.cc [new file with mode: 0644]
src/crimson/osd/osd_operations/client_request.h [new file with mode: 0644]
src/crimson/osd/osd_operations/compound_peering_request.cc [new file with mode: 0644]
src/crimson/osd/osd_operations/compound_peering_request.h [new file with mode: 0644]
src/crimson/osd/osd_operations/peering_event.cc [new file with mode: 0644]
src/crimson/osd/osd_operations/peering_event.h [new file with mode: 0644]
src/crimson/osd/osdmap_gate.cc [new file with mode: 0644]
src/crimson/osd/osdmap_gate.h [new file with mode: 0644]
src/crimson/osd/pg.cc
src/crimson/osd/pg.h
src/crimson/osd/pg_map.cc [new file with mode: 0644]
src/crimson/osd/pg_map.h [new file with mode: 0644]
src/crimson/osd/shard_services.cc
src/crimson/osd/shard_services.h