]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
crimson/osd: handle pg ops with do_pg_ops()
authorKefu Chai <kchai@redhat.com>
Wed, 18 Sep 2019 14:54:37 +0000 (22:54 +0800)
committerKefu Chai <kchai@redhat.com>
Wed, 18 Sep 2019 14:54:39 +0000 (22:54 +0800)
commiteec27f58326edc81dbd3ca5ee030039d320ab254
treee454695b2912734a6ed014ee89461d46d8afab14
parent05b88f644ef3aaffb7a08af0559d8f17f1f44644
crimson/osd: handle pg ops with do_pg_ops()

currently, OpsExecuter tries to load the object info for all ops to be
executed, but the PG ops do not require the existence of object
specified by op. so we need to specialize for them.

in this change,

* `OpsExecuter::execute_pg_op()` is added to handle pg ops without
  loading object info first.
* `pgnls` and `pgnls_filter` are handled by
  `OpsExecuter::execute_pg_op()`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
src/crimson/osd/ops_executer.cc
src/crimson/osd/ops_executer.h
src/crimson/osd/pg.cc
src/crimson/osd/pg.h