]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
crimson/osd: introduce OpsExecuter to uniform calling CEPH_OSD_OPS.
authorRadoslaw Zarzynski <rzarzyns@redhat.com>
Fri, 2 Aug 2019 12:27:52 +0000 (14:27 +0200)
committerRadoslaw Zarzynski <rzarzyns@redhat.com>
Sat, 24 Aug 2019 01:33:57 +0000 (03:33 +0200)
commit44e14775a086751215ef038f98d7a37b3a8d733b
tree81d57a3419fbff1c7f9da2e568fc696e575c11ae
parentaaadbe6df7381be5f23f1156a09db577b8d57527
crimson/osd: introduce OpsExecuter to uniform calling CEPH_OSD_OPS.

OSD has two entry points for executing CEPH_OSD_OP_*:
  1. the MOSDOp message handler,
  2. the Object Class API (cls_* and cls_cxx_* functions).

We definitely want to address these two users without code
duplication. However, exposing the entire PG to Obj Class
would break encapsulation. Moreover, there is difference
in life times between PG and sequence-of-operations-from-
MOSDOp.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
src/crimson/osd/CMakeLists.txt
src/crimson/osd/objclass.cc
src/crimson/osd/ops_executer.cc [new file with mode: 0644]
src/crimson/osd/ops_executer.h [new file with mode: 0644]
src/crimson/osd/pg.cc
src/crimson/osd/pg.h
src/crimson/osd/pg_backend.cc
src/crimson/osd/pg_backend.h
src/include/rados/objclass.h