Commit Graph

46697 Commits

Author SHA1 Message Date
Loic Dachary
736532cac9 Merge pull request #6934 from smithfarm/wip-14070
doc: Update list of admin/build-doc dependencies

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-12-15 13:24:47 +01:00
Nathan Cutler
eadc771d27 doc: Update list of admin/build-doc dependencies
http://tracker.ceph.com/issues/14070 Fixes: #14070

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-12-15 12:41:29 +01:00
Loic Dachary
9c34d0c4e4 Merge pull request #6910 from dachary/wip-dev-guide-ceph-qa-suite
doc: dev: introduction to tests

Reviewed-by: Nathan Cutler <ncutler@suse.com>
2015-12-15 11:21:51 +01:00
Loic Dachary
575d2380af Merge pull request #6927 from tchaikov/wip-fix-ftbfs
rgw: fix the build failure

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-12-15 08:52:51 +01:00
Kefu Chai
34a6c2aeae rgw: remove unused variable
to fix the compiler warning of

 rgw/rgw_formats.cc: In member function 'virtual void
 RGWFormatter_Plain::dump_format_va(const char*, const char*, bool, const
 char*, __va_list_tag*)':
 rgw/rgw_formats.cc:143:15: warning: unused variable 'format'
 [-Wunused-variable]
    const char *format;

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-12-15 14:46:16 +08:00
Kefu Chai
a57784f75f rgw: fix the build failure
* s/bucket_name_str/bucket_name/
* the member variable name of `req_state` was changed to `bucket_name`
  in f7ca00a. but some commits was still using the old name before the
  commit got merged.
* fixes for the tenant related change
* also fixes a typo

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-12-15 14:17:06 +08:00
Josh Durgin
265e18fc36 Merge pull request #6859 from dillaman/wip-librbd-async-refresh
librbd: image refresh code paths converted to async state machines

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-12-14 20:14:13 -08:00
Jason Dillaman
d2d4bb42d5 librbd: refresh object map after rollback
An image refresh will no longer trigger an automatic object map
reload, therefore explicitly reload the object map after rollback.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
db2d495cce librbd: refresh image asynchronously from watch/notify path
The AIO path already ensures asynchronous image refreshes, but the
watch/notify path for maintenance ops was still using the sync refresh
path.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
16547c9b17 librbd: the journal state machine is now asynchronous
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
2a4aad5ffb tests: adjust test cases to refactored librbd
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
7e3a032224 librbd: all object map methods are now async
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
8ef37b0259 librbd: IO ops will now asynchronously refresh the image if needed
This avoids blocking the AIO path with the previous synchronous
refresh path.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
01bc5156ef WorkQueue: PointerWQ now supports out-of-band processing
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
18f4f69f20 librbd: flush all in-flight IO on block write and shut down
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
bad4641547 librbd: add shut down support to the AIO work queue
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
f1973b1d94 librbd: integrate new async image state machines
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
8740ddf0f7 librbd: ImageWatcher should release lock upon request
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
c00b28b017 librbd: implement image state tracker for open/close/refresh/etc
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
3fd24eb2cd librbd: rename ImageRefresh to ImageState
This class handles more than just refreshing the image from
disk.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
1673332353 librbd: object map lifespan now controlled by state machines
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
ccdeb15157 librbd: decouple ImageWatcher from exclusive lock management
Use new ExclusiveLock state machine to handle all the proper
transitions between lock states.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
6e1718c758 librbd: separate image refresh into async state machines
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
22eb25bc20 tests: exclusive lock state machines test cases
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
8aabb8cbc3 librbd: separate exclusive lock handling into async state machines
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:31:31 -05:00
Jason Dillaman
03b79abd12 librados_test_stub: additional definitions and mock functions
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:51 -05:00
Jason Dillaman
19127742ac tests: mock test cases for new async object map lock/unlock/refresh ops
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:51 -05:00
Jason Dillaman
7248b93c54 librbd: async object map lock/unlock/refresh state machines
Creating async versions to support an async image refresh

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:51 -05:00
Jason Dillaman
700a0def53 librados_test_stub: additional mocked IoCtx methods
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:51 -05:00
Jason Dillaman
dd253af868 librbd: convert object_map::InvalidateRequest to template
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:51 -05:00
Jason Dillaman
8a4c1558d2 librbd: support updated async cls_rbd API
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:51 -05:00
Jason Dillaman
fc4370ea85 cls_rbd: async version of class helpers added
New async versions of get_id, get_immutable_metadata,
get_mutable_metadata, get_flags, get_stripe_unit_count,
snapshot_list, and old_snapshot_list.  These are needed
by the new librbd async ImageCtx op state machines.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:51 -05:00
Jason Dillaman
e2eb27fb9e librbd: fix missing header dependencies for parent_types.h
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:51 -05:00
Jason Dillaman
3f3a040012 librados_test_stub: implemented ObjectReadOperation::stat
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:50 -05:00
Jason Dillaman
8a33a8976e tests: restrict rebuild object map test case
It should only run when the object map is enabled for the image.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:50 -05:00
Jason Dillaman
3d25f5148c librbd: moved object name helpers to librbd::util namespace
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:50 -05:00
Jason Dillaman
06f2eb29c9 tests: integrate cleaned up librbd AIO callback adapter
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:30 -05:00
Jason Dillaman
004090a660 librbd: cleanup librbd AIO completion callbacks
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:29 -05:00
Jason Dillaman
c67725b7eb librbd: cleanup Context and librados AIO completion callbacks
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 20:30:29 -05:00
Yehuda Sadeh
f1c02a38dc Merge pull request #6643 from rzarzynski/wip-rgw-slo-rzarzynski
- rgw: swift bulk delete (Radoslaw Zarzynski)
- rgw: static large objects (Radoslaw Zarzynski, Yehuda Sadeh)

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2015-12-14 17:00:36 -08:00
Josh Durgin
0a720017bf Merge pull request #6925 from dillaman/wip-13633
librbd: optionally validate new RBD pools for snapshot support

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-12-14 15:47:57 -08:00
Jason Dillaman
00cfe4efac tests: new integration test for validating new RBD pools
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 17:49:55 -05:00
Jason Dillaman
1fea4dadc6 librbd: optionally validate RBD pool configuration (snapshot support)
Fixes: #13633
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 17:41:49 -05:00
Josh Durgin
b85775bbd8 Merge pull request #6917 from majianpeng/journal-iohint
Journal iohint for librbd

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-12-14 14:16:19 -08:00
Josh Durgin
13b8057702 Merge pull request #6923 from dillaman/wip-14060
librbd: correct race conditions discovered during unit testing

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-12-14 13:41:40 -08:00
Jason Dillaman
664903fbee journal: avoid race between flush request and in-flight flushes
Previously, if the journal object was empty, a flush request could
complete instantly even if there is an in-flight 'record safe'
callback.

Fixes: #14060
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 15:28:38 -05:00
Jason Dillaman
3e6c990389 librbd: fix test case race condition for maintenance requests
Fixes: #14060
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-12-14 15:27:54 -05:00
Sage Weil
03f719cb32 Merge pull request #6922 from liewegas/wip-cephfs-posix
doc/cephfs/posix: update
2015-12-14 13:12:58 -05:00
Josh Durgin
16ba826131 Merge pull request #6899 from branch-predictor/bp-fix-no-rbd-build
rbd: fix build with "--without-rbd"

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-12-14 09:49:49 -08:00
Piotr Dałek
15c840c1d7 rbd: fix build with "--without-rbd"
It's not possible to build Ceph configured with "--without-rbd", as
tests and FileStore depends on components provided by RBD. This changeset
fixes this.

Fixes: #14058
Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
2015-12-14 18:20:45 +01:00