]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
Objecter, librados: use only ObjectOperation form of sparse_read internally
authorJosh Durgin <josh.durgin@inktank.com>
Sun, 12 May 2013 21:39:58 +0000 (14:39 -0700)
committerJosh Durgin <josh.durgin@inktank.com>
Mon, 13 May 2013 02:31:22 +0000 (19:31 -0700)
commitd5193460bfc9a77413c6bc5dbe7d66a99c7615d5
tree16f70799569042bd30485390b5eea8fce2e3f062
parented76824c472358bc7610c136e3db78f8544451c9
Objecter, librados: use only ObjectOperation form of sparse_read internally

This will be used when exposing an ObjectOperation version of sparse_read()
to the librados user, and there's no reason to duplicate code for creating
and handling it. Add a wrapper Context for handling the lifecycle of the
::ObjectOperation.

This cleans up the synchronous version of sparse_read quite a bit by
using the general operate_read() instead of duplicating decoding and
a bunch of sync boilerplate.

Move handling the decoding of a sparse_read into the Objecter, with
the rest of the decoding of rados operations. librados shouldn't be
the only user of the Objecter that can understand sparse_reads.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
src/librados/IoCtxImpl.cc
src/librados/IoCtxImpl.h
src/osdc/Objecter.h