]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 years agocrimson/onode-staged-tree: implement a ghobject_t constructor
Yingxin Cheng [Thu, 3 Dec 2020 01:58:02 +0000 (09:58 +0800)]
crimson/onode-staged-tree: implement a ghobject_t constructor

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: remove unused logic in stages/node_stage_layout.h
Yingxin Cheng [Wed, 2 Dec 2020 14:51:51 +0000 (22:51 +0800)]
crimson/onode-staged-tree: remove unused logic in stages/node_stage_layout.h

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: rename NodeExtentT to NodeExtentAccessorT
Yingxin Cheng [Wed, 2 Dec 2020 14:46:35 +0000 (22:46 +0800)]
crimson/onode-staged-tree: rename NodeExtentT to NodeExtentAccessorT

Also renamed file name and added class comments.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: remove state_t in NodeExtentT
Yingxin Cheng [Wed, 2 Dec 2020 14:06:23 +0000 (22:06 +0800)]
crimson/onode-staged-tree: remove state_t in NodeExtentT

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: use Seastar API v6
Yingxin Cheng [Tue, 3 Nov 2020 02:28:29 +0000 (10:28 +0800)]
crimson/onode-staged-tree: use Seastar API v6

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: rename ns_oid_view_t::test_append()
Yingxin Cheng [Mon, 2 Nov 2020 05:35:11 +0000 (13:35 +0800)]
crimson/onode-staged-tree: rename ns_oid_view_t::test_append()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement string_view_masked_t
Yingxin Cheng [Mon, 2 Nov 2020 05:24:18 +0000 (13:24 +0800)]
crimson/onode-staged-tree: implement string_view_masked_t

Use string_view_masked_t to consolidate a string_key_view_t with type, a
string/string_view, or a masked string. And leverage the consistant
class to do compare, print, convert and append operations.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement DeltaRecorder
Yingxin Cheng [Fri, 30 Oct 2020 06:35:23 +0000 (14:35 +0800)]
crimson/onode-staged-tree: implement DeltaRecorder

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: integrate TMTestState
Yingxin Cheng [Fri, 16 Oct 2020 03:22:05 +0000 (11:22 +0800)]
crimson/onode-staged-tree: integrate TMTestState

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: add option IS_DUMMY_SYNC to tests
Yingxin Cheng [Thu, 15 Oct 2020 12:05:36 +0000 (20:05 +0800)]
crimson/onode-staged-tree: add option IS_DUMMY_SYNC to tests

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix non-debug build warning
Yingxin Cheng [Thu, 15 Oct 2020 05:06:27 +0000 (13:06 +0800)]
crimson/onode-staged-tree: fix non-debug build warning

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement benchmark tool
Yingxin Cheng [Thu, 15 Oct 2020 02:02:19 +0000 (10:02 +0800)]
crimson/onode-staged-tree: implement benchmark tool

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: get statistics from tree
Yingxin Cheng [Wed, 14 Oct 2020 01:58:08 +0000 (09:58 +0800)]
crimson/onode-staged-tree: get statistics from tree

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: add assertions to split test
Yingxin Cheng [Mon, 12 Oct 2020 08:03:31 +0000 (16:03 +0800)]
crimson/onode-staged-tree: add assertions to split test

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: proper logging and dump
Yingxin Cheng [Mon, 12 Oct 2020 05:15:56 +0000 (13:15 +0800)]
crimson/onode-staged-tree: proper logging and dump

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: sizing related fixes and cleanup
Yingxin Cheng [Sat, 10 Oct 2020 06:07:28 +0000 (14:07 +0800)]
crimson/onode-staged-tree: sizing related fixes and cleanup

* assert filled size matches during dump;
* assert estimate_split_size matches the left node size after split;
* related fixes to pass the added assertions;
* use node_offset_t where possible;

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: test split at end
Yingxin Cheng [Sat, 10 Oct 2020 01:37:52 +0000 (09:37 +0800)]
crimson/onode-staged-tree: test split at end

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: add asynchronous dummy backend
Yingxin Cheng [Fri, 9 Oct 2020 06:43:52 +0000 (14:43 +0800)]
crimson/onode-staged-tree: add asynchronous dummy backend

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: disable cursor validation in track_split()
Yingxin Cheng [Fri, 9 Oct 2020 06:05:44 +0000 (14:05 +0800)]
crimson/onode-staged-tree: disable cursor validation in track_split()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: random insert/split test
Yingxin Cheng [Wed, 30 Sep 2020 01:52:59 +0000 (09:52 +0800)]
crimson/onode-staged-tree: random insert/split test

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: imlement fair locate split strategy
Yingxin Cheng [Wed, 30 Sep 2020 01:48:46 +0000 (09:48 +0800)]
crimson/onode-staged-tree: imlement fair locate split strategy

Also make adjustments in unit tests.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix extra_size during locate_split()
Yingxin Cheng [Tue, 29 Sep 2020 07:30:02 +0000 (15:30 +0800)]
crimson/onode-staged-tree: fix extra_size during locate_split()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: cleanup, introduce explicit INDEX_LAST
Yingxin Cheng [Mon, 28 Sep 2020 14:57:54 +0000 (22:57 +0800)]
crimson/onode-staged-tree: cleanup, introduce explicit INDEX_LAST

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: clarify the node sizing considerations
Yingxin Cheng [Sun, 27 Sep 2020 08:23:11 +0000 (16:23 +0800)]
crimson/onode-staged-tree: clarify the node sizing considerations

Discuss relationships between NODE_BLOCK_SIZE, ns-oid string size limit,
onode size limit, the strategy of locate_split(), and the effect of
"double split".

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: cleanup recursively_locate_split()
Yingxin Cheng [Sun, 27 Sep 2020 02:05:35 +0000 (10:05 +0800)]
crimson/onode-staged-tree: cleanup recursively_locate_split()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix insert_stage calculation
Yingxin Cheng [Fri, 25 Sep 2020 07:57:44 +0000 (15:57 +0800)]
crimson/onode-staged-tree: fix insert_stage calculation

Fix incorrect insert_stage calculation when insert into the front of
leaf node.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: add more validations
Yingxin Cheng [Fri, 25 Sep 2020 07:29:10 +0000 (15:29 +0800)]
crimson/onode-staged-tree: add more validations

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix trim related issue when insert front
Yingxin Cheng [Fri, 25 Sep 2020 07:17:10 +0000 (15:17 +0800)]
crimson/onode-staged-tree: fix trim related issue when insert front

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix target split size calculation
Yingxin Cheng [Thu, 24 Sep 2020 06:38:45 +0000 (14:38 +0800)]
crimson/onode-staged-tree: fix target split size calculation

Also adjust the test layouts because the split point may change.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: encapsulate TestTree for leaf split test
Yingxin Cheng [Thu, 24 Sep 2020 06:33:35 +0000 (14:33 +0800)]
crimson/onode-staged-tree: encapsulate TestTree for leaf split test

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: clean up insert/split logs
Yingxin Cheng [Wed, 23 Sep 2020 04:46:24 +0000 (12:46 +0800)]
crimson/onode-staged-tree: clean up insert/split logs

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix errors about misaligned address access
Yingxin Cheng [Tue, 22 Sep 2020 07:39:57 +0000 (15:39 +0800)]
crimson/onode-staged-tree: fix errors about misaligned address access

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: misc cleanups in UT
Yingxin Cheng [Tue, 22 Sep 2020 07:36:48 +0000 (15:36 +0800)]
crimson/onode-staged-tree: misc cleanups in UT

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix incorrect string cstr
Yingxin Cheng [Tue, 22 Sep 2020 05:45:20 +0000 (13:45 +0800)]
crimson/onode-staged-tree: fix incorrect string cstr

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: integrate seastore read/write_node_root()
Yingxin Cheng [Mon, 21 Sep 2020 02:50:18 +0000 (10:50 +0800)]
crimson/onode-staged-tree: integrate seastore read/write_node_root()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/seastore: implement read/write_onode_root()
Yingxin Cheng [Mon, 21 Sep 2020 02:15:38 +0000 (10:15 +0800)]
crimson/seastore: implement read/write_onode_root()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/seastore: rename Cache::get_root()
Yingxin Cheng [Mon, 21 Sep 2020 02:14:36 +0000 (10:14 +0800)]
crimson/seastore: rename Cache::get_root()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement Btree::Cursor::get_ghobj()
Yingxin Cheng [Fri, 18 Sep 2020 02:49:35 +0000 (10:49 +0800)]
crimson/onode-staged-tree: implement Btree::Cursor::get_ghobj()

Internally, get key_view_t when lookup into the leaf node.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: cleanup stage.h
Yingxin Cheng [Thu, 17 Sep 2020 02:15:12 +0000 (10:15 +0800)]
crimson/onode-staged-tree: cleanup stage.h

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: cleanup the end tree_cursor_t cstr
Yingxin Cheng [Wed, 16 Sep 2020 15:20:54 +0000 (23:20 +0800)]
crimson/onode-staged-tree: cleanup the end tree_cursor_t cstr

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: integrate ghobject_t
Yingxin Cheng [Wed, 16 Sep 2020 08:15:43 +0000 (16:15 +0800)]
crimson/onode-staged-tree: integrate ghobject_t

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: version based p_value invalidation in tree_cursor_t;
Yingxin Cheng [Tue, 15 Sep 2020 08:40:08 +0000 (16:40 +0800)]
crimson/onode-staged-tree: version based p_value invalidation in tree_cursor_t;

When the node content is modified, deprecate the out-dated p_value cache
in tree_cursor_t by a node version increment.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: decouple Node and Layout classes
Yingxin Cheng [Tue, 15 Sep 2020 06:07:05 +0000 (14:07 +0800)]
crimson/onode-staged-tree: decouple Node and Layout classes

* Implement has-a relationship between Node and NodeImpl classes;
* Implement NodeLayoutT for templated Layout implementations;
* Reorganize cross-node logic into Node classes;
* Update tests with the new dependencies;
* MISC related cleanup;

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: add initial onode staged-fltree
Yingxin Cheng [Wed, 8 Apr 2020 02:35:40 +0000 (10:35 +0800)]
crimson/onode-staged-tree: add initial onode staged-fltree

Support basic insert and lookup operations, tested by an isolated dummy
backend, and also a solution to integrate with seastore
TransactionManager and LogicalCachedExtent.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agoMerge pull request #38213 from petrutlucian94/rbd_exit
Jason Dillaman [Wed, 25 Nov 2020 01:52:02 +0000 (20:52 -0500)]
Merge pull request #38213 from petrutlucian94/rbd_exit

rbd: minor rbd-wnbd improvements

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
4 years agoMerge pull request #38254 from neha-ojha/wip-48299
Yuri Weinstein [Tue, 24 Nov 2020 18:51:40 +0000 (10:51 -0800)]
Merge pull request #38254 from neha-ojha/wip-48299

doc/releases/nautilus.rst: add release notes for 14.2.15

Reviewed-by: David Galloway <dgallowa@redhat.com>
Reviewed-by: David Galloway <dgallowa@redhat.com>
Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
4 years agoMerge pull request #38144 from anthonyeleven/anthonyeleven/docs-46365
zdover23 [Tue, 24 Nov 2020 18:51:13 +0000 (04:51 +1000)]
Merge pull request #38144 from anthonyeleven/anthonyeleven/docs-46365

doc/dev/developer_guide: prefer Latinate verbs to English phrasal verbs

Reviewed-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #38260 from bk201/wip-48338
Ernesto Puerta [Tue, 24 Nov 2020 18:35:36 +0000 (19:35 +0100)]
Merge pull request #38260 from bk201/wip-48338

mgr/dashboard: fix tox py3 environment error

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #38253 from cbodley/wip-rgw-gc-disable-defer
Casey Bodley [Tue, 24 Nov 2020 17:14:22 +0000 (12:14 -0500)]
Merge pull request #38253 from cbodley/wip-rgw-gc-disable-defer

rgw: temporarily disable calls to defer_gc() in RGWGetObj

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
4 years agodoc/releases/nautilus.rst: add release notes for 14.2.15 38254/head
Neha Ojha [Tue, 24 Nov 2020 00:13:24 +0000 (00:13 +0000)]
doc/releases/nautilus.rst: add release notes for 14.2.15

Signed-off-by: Neha Ojha <nojha@redhat.com>
4 years agoMerge pull request #38142 from theanalyst/doc/releases/v14.2.14
Ilya Dryomov [Tue, 24 Nov 2020 16:23:00 +0000 (17:23 +0100)]
Merge pull request #38142 from theanalyst/doc/releases/v14.2.14

doc: release notes for octopus & nautilus backports

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 years agoMerge pull request #38247 from dillaman/wip-librbd-test-rename
Mykola Golub [Tue, 24 Nov 2020 15:15:29 +0000 (17:15 +0200)]
Merge pull request #38247 from dillaman/wip-librbd-test-rename

test/librbd: rename tests to match proper namespaces

Reviewed-by: Mykola Golub <mgolub@suse.com>
4 years agodoc: releases: v15.2.6 Octopus release notes 38142/head
Abhishek Lekshmanan [Tue, 17 Nov 2020 19:51:40 +0000 (20:51 +0100)]
doc: releases: v15.2.6 Octopus release notes

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
Co-authored-by: Ilya Dryomov <idryomov@gmail.com>
4 years agodoc: releases: v14.2.14 Nautilus release notes
Abhishek Lekshmanan [Tue, 17 Nov 2020 19:51:15 +0000 (20:51 +0100)]
doc: releases: v14.2.14 Nautilus release notes

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
Co-authored-by: Ilya Dryomov <idryomov@gmail.com>
4 years agoMerge pull request #38261 from tchaikov/wip-45919
Kefu Chai [Tue, 24 Nov 2020 10:14:37 +0000 (18:14 +0800)]
Merge pull request #38261 from tchaikov/wip-45919

pybind/mgr/dashboard/run-backend-api-tests: print more log from mgr

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
4 years agoMerge pull request #38217 from ideepika/wip-fix-lua-failure
Kefu Chai [Tue, 24 Nov 2020 10:00:15 +0000 (18:00 +0800)]
Merge pull request #38217 from ideepika/wip-fix-lua-failure

cmake: require Lua 5.3 and up

Reviewed-by: Yuval Lifshitz <ylifshit@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #38204 from lnsyyj/wip-iouring
Kefu Chai [Tue, 24 Nov 2020 09:55:17 +0000 (17:55 +0800)]
Merge pull request #38204 from lnsyyj/wip-iouring

blk/kernel/io_uring: do not guard liburing backend with __x86_64__ anymore

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #38256 from badone/wip-dont-build-io_uring.c-every-time
Kefu Chai [Tue, 24 Nov 2020 08:04:51 +0000 (16:04 +0800)]
Merge pull request #38256 from badone/wip-dont-build-io_uring.c-every-time

cmake: Stop 'configure' running every time

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/dashboard/run-backend-api-tests: print more log from mgr 38261/head
Kefu Chai [Tue, 24 Nov 2020 07:46:52 +0000 (15:46 +0800)]
pybind/mgr/dashboard/run-backend-api-tests: print more log from mgr

in hope to more context when debugging https://tracker.ceph.com/issues/45919

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agomgr/dashboard: fix tox py3 environment error 38260/head
Kiefer Chang [Tue, 24 Nov 2020 07:41:11 +0000 (15:41 +0800)]
mgr/dashboard: fix tox py3 environment error

Add `ceph_argparse` module to the base environment.

Fixes: https://tracker.ceph.com/issues/48338
Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
4 years agocmake: Stop 'configure' running every time 38256/head
Brad Hubbard [Tue, 24 Nov 2020 03:24:35 +0000 (13:24 +1000)]
cmake: Stop 'configure' running every time

Currently the configure script is run on 'liburing_ext' not only for the
initial build but for subsequent incremental builds.

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
4 years agoMerge pull request #38243 from idryomov/wip-relax-preauth-asserts-again
Ilya Dryomov [Tue, 24 Nov 2020 01:48:48 +0000 (02:48 +0100)]
Merge pull request #38243 from idryomov/wip-relax-preauth-asserts-again

msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing, again

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agoMerge pull request #38252 from idryomov/wip-resurrect-log-compression
Kefu Chai [Tue, 24 Nov 2020 01:46:40 +0000 (09:46 +0800)]
Merge pull request #38252 from idryomov/wip-resurrect-log-compression

qa/tasks/ceph: resurrect log compression

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoqa/tasks/ceph: resurrect log compression 38252/head
Ilya Dryomov [Mon, 23 Nov 2020 22:15:09 +0000 (23:15 +0100)]
qa/tasks/ceph: resurrect log compression

Commit 953662555840 ("qa/tasks/ceph: use Cluster.sh() and Remote.sh()
when appropriate") dropped run.wait(), which waits for all given
processes to exit.  This resulted in errors like

  INFO:teuthology.orchestra.run.smithi107.stderr:tar: ./objectstore_tool..log: file changed as we read it
  INFO:teuthology.orchestra.run.smithi107.stderr:tar: ./ceph-client.admin.175125.log: File removed before we read it

as the task moved on to archiving semi-corrupted and uncompressed logs,
filling up the lab cluster.

Revert that hunk, as Cluster.sh() is useless here -- we don't need
stdout or stderr, but very much need parallel execution and wait for
the compression to finish.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 years agorgw: temporarily disable calls to defer_gc() in RGWGetObj 38253/head
Casey Bodley [Mon, 23 Nov 2020 23:06:26 +0000 (18:06 -0500)]
rgw: temporarily disable calls to defer_gc() in RGWGetObj

cls_rgw_gc_queue_update_entry() is known to cause data loss when called
on objects that have not actually been scheduled for garbage collection

RGWGetObj is the only caller, and uses defer_gc() when reads are taking
a long time compared to rgw_gc_obj_min_wait. if an object has since been
deleted and submitted for garbage collection, this allows RGWGetObj to
defer that gc until the entire read completes

by disabling these calls to defer_gc(), very long reads (longer than 1hr,
with default configuration) may fail if the object gets deleted, and a
retry will result in a 404 Not Found error as expected

Fixes: https://tracker.ceph.com/issues/47866
Signed-off-by: Casey Bodley <cbodley@redhat.com>
4 years agodoc/dev/developer_guide: prefer Latinate verbs to English phrasal verbs 38144/head
Anthony D'Atri [Wed, 18 Nov 2020 01:04:57 +0000 (17:04 -0800)]
doc/dev/developer_guide: prefer Latinate verbs to English phrasal verbs

Signed-off-by: Anthony D'Atri <anthony.datri@gmail.com>
Fixes: https://tracker.ceph.com/issues/46365
4 years agotest/librbd: rename tests to match proper namespaces 38247/head
Jason Dillaman [Mon, 23 Nov 2020 17:07:23 +0000 (12:07 -0500)]
test/librbd: rename tests to match proper namespaces

Some of the new crypto tests use a generic test name that
doesn't include the full namespace of the class under test.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
4 years agoMerge pull request #37875 from orozery/librbd-luks-format
Jason Dillaman [Mon, 23 Nov 2020 17:06:32 +0000 (12:06 -0500)]
Merge pull request #37875 from orozery/librbd-luks-format

librbd: add LUKS support

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
4 years agoMerge pull request #38201 from lixiaoy1/minor_fix_parent_cache
Jason Dillaman [Mon, 23 Nov 2020 16:12:44 +0000 (11:12 -0500)]
Merge pull request #38201 from lixiaoy1/minor_fix_parent_cache

librbd/plugin: delete field m_image_ctx in ParentCache

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
4 years agolibrbd: add LUKS support 37875/head
Or Ozeri [Wed, 28 Oct 2020 12:22:06 +0000 (14:22 +0200)]
librbd: add LUKS support

This commit introduces internal (not yet part of the api) librbd functions for:
1. formating an RBD image in LUKS format
2. parsing an RBD image in LUKS format

 The actual implementation of the LUKS format is done via libcryptsetup, which is added as a new dependency.

Signed-off-by: Or Ozeri <oro@il.ibm.com>
4 years agoMerge pull request #38089 from anthonyeleven/anthonyeleven/docs-47976
zdover23 [Mon, 23 Nov 2020 14:32:22 +0000 (00:32 +1000)]
Merge pull request #38089 from anthonyeleven/anthonyeleven/docs-47976

doc/mgr: Fix msgr2 TCP port in a couple of examples

Reviewed-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #38180 from anthonyeleven/anthonyeleven/docs-23442
zdover23 [Mon, 23 Nov 2020 14:05:00 +0000 (00:05 +1000)]
Merge pull request #38180 from anthonyeleven/anthonyeleven/docs-23442

doc/rados/operations: Add description of new auth profiles

Reviewed-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #38229 from wjwithagen/wjw-fix-librbd-HttpStream.cc
Jason Dillaman [Mon, 23 Nov 2020 13:35:10 +0000 (08:35 -0500)]
Merge pull request #38229 from wjwithagen/wjw-fix-librbd-HttpStream.cc

librbd: Fix variable declaration in capture list in lambda

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
4 years agomsg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing, again 38243/head
Ilya Dryomov [Sat, 21 Nov 2020 10:01:40 +0000 (11:01 +0100)]
msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing, again

With CEPHX_V2 authorizer challenges brought back in commit
4a82c72e3bdd, these need to be bumped again, as two authorizers
(without and then with the challenge) are transmitted and signed
instead of one (without the challenge).  See commit 94953dd9398a
("msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing")
for details.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 years agoMerge PR #38207 into master
Jan Fajerski [Mon, 23 Nov 2020 12:59:16 +0000 (13:59 +0100)]
Merge PR #38207 into master

* refs/pull/38207/head:
ceph-volume: fix test_setup_device_device_name_is_none

Reviewed-by: Dimitri Savineau <dsavinea@redhat.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
4 years agoMerge pull request #38092 from anthonyeleven/anthonyeleven/docs-mixed-device-trick
zdover23 [Mon, 23 Nov 2020 12:20:13 +0000 (22:20 +1000)]
Merge pull request #38092 from anthonyeleven/anthonyeleven/docs-mixed-device-trick

doc/rados/operations: enhance primary affinity section

Reviewed-by: Zac Dover <zac.dover@gmail.com>
4 years agocmake: require Lua 5.3 and up 38217/head
Deepika Upadhyay [Fri, 20 Nov 2020 14:02:45 +0000 (19:32 +0530)]
cmake: require Lua 5.3 and up

fixes: https://tracker.ceph.com/issues/48312
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoMerge pull request #38181 from anthonyeleven/anthonyeleven/docs-23443
zdover23 [Mon, 23 Nov 2020 06:13:24 +0000 (16:13 +1000)]
Merge pull request #38181 from anthonyeleven/anthonyeleven/docs-23443

doc: object -> file -> disk is wrong for bluestore

Reviewed-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #34506 from ktdreyer/doc-rm-sysv-init
zdover23 [Mon, 23 Nov 2020 06:10:30 +0000 (16:10 +1000)]
Merge pull request #34506 from ktdreyer/doc-rm-sysv-init

doc: remove SysV init reference in manual deployment walkthrough

Reviewed-by: Zac Dover <zac.dover@gmail.com>
4 years agorbd: add "help" command to rbd-wnbd 38213/head
Lucian Petrut [Fri, 20 Nov 2020 07:06:39 +0000 (07:06 +0000)]
rbd: add "help" command to rbd-wnbd

At the moment, "rbd-wnbd" says that "help" is an unsupported command,
only "rbd-wnbd -h" works. This isn't very user friendly.

Although "rbd-wnbd" isn't supposed to be used directly in most cases,
users might want to retrieve device specific arguments that can be
passed using "rbd device -o".

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
4 years agoMerge pull request #38228 from ivancich/wip-rgw-gc-defer-should-not-enqueue
J. Eric Ivancich [Sun, 22 Nov 2020 15:36:48 +0000 (10:36 -0500)]
Merge pull request #38228 from ivancich/wip-rgw-gc-defer-should-not-enqueue

rgw: during GC defer, prevent new GC enqueue

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
4 years agoMerge pull request #38231 from anthonyeleven/anthonyeleven/docs-40579
Kefu Chai [Sun, 22 Nov 2020 13:24:56 +0000 (21:24 +0800)]
Merge pull request #38231 from anthonyeleven/anthonyeleven/docs-40579

doc/rados/operations: POOL_NEAR_FULL on OSD_NEAR_FULL

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoblk/kernel/io_uring: do not guard liburing backend with __x86_64__ anymore 38204/head
JiangYu [Fri, 20 Nov 2020 06:24:54 +0000 (06:24 +0000)]
blk/kernel/io_uring: do not guard liburing backend with __x86_64__ anymore

Signed-off-by: JiangYu <lnsyyj@hotmail.com>
Let the liburing library to ensure the support of the iouring system call back-end CPU instruction set.

4 years agodoc/rados/operations: POOL_NEAR_FULL on OSD_NEAR_FULL 38231/head
Anthony D'Atri [Wed, 18 Nov 2020 05:08:29 +0000 (21:08 -0800)]
doc/rados/operations: POOL_NEAR_FULL on OSD_NEAR_FULL

Fixes: https://tracker.ceph.com/issues/40579
Signed-off-by: Anthony D'Atri <anthony.datri@gmail.com>
4 years agodoc/rados/operations: enhance primary affinity section 38092/head
Anthony D'Atri [Mon, 16 Nov 2020 03:52:00 +0000 (19:52 -0800)]
doc/rados/operations: enhance primary affinity section

Signed-off-by: Anthony D'Atri <anthony.datri@gmail.com>
4 years agoMerge pull request #38090 from anthonyeleven/anthonyeleven/docs-47339
Kefu Chai [Sun, 22 Nov 2020 06:03:09 +0000 (14:03 +0800)]
Merge pull request #38090 from anthonyeleven/anthonyeleven/docs-47339

doc/releases: correct spelling

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #37900 from jhonxue/master
Kefu Chai [Sun, 22 Nov 2020 05:42:46 +0000 (13:42 +0800)]
Merge pull request #37900 from jhonxue/master

os/bluestore/StupidAllocator: choose the right bin when bdev_block_size changed

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
4 years agoMerge pull request #38161 from petrutlucian94/msg_timeout
Kefu Chai [Sun, 22 Nov 2020 05:41:33 +0000 (13:41 +0800)]
Merge pull request #38161 from petrutlucian94/msg_timeout

msg: use timeout when initiating connection

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #38070 from dvanders/dvanders_trimto
Kefu Chai [Sun, 22 Nov 2020 05:39:44 +0000 (13:39 +0800)]
Merge pull request #38070 from dvanders/dvanders_trimto

mon/OSDMonitor, mon/PaxosService: additional debug outputs when trimming

Reviewed-by: Joao Eduardo Luis <joao@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #38148 from jhonxue/wip-fix-bluestore-avl-allocator
Kefu Chai [Sun, 22 Nov 2020 05:39:09 +0000 (13:39 +0800)]
Merge pull request #38148 from jhonxue/wip-fix-bluestore-avl-allocator

os/bluestore: do not call _block_picker() again if already searched from start()

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #38128 from tchaikov/wip-mon-add-space-in-log
Kefu Chai [Sun, 22 Nov 2020 05:36:25 +0000 (13:36 +0800)]
Merge pull request #38128 from tchaikov/wip-mon-add-space-in-log

mon/OSDMonitor: add a space after function name in logging message

Reviewed-by: Joao Eduardo Luis <joao@suse.com>
4 years agodoc/releases: correct spelling 38090/head
Anthony D'Atri [Mon, 16 Nov 2020 00:01:36 +0000 (16:01 -0800)]
doc/releases: correct spelling

Fixes: https://tracker.ceph.com/issues/47339
Signed-off-by: Anthony D'Atri <anthony.datri@gmail.com>
4 years agoMerge pull request #38227 from tchaikov/wip-store-test
Kefu Chai [Sun, 22 Nov 2020 01:59:08 +0000 (09:59 +0800)]
Merge pull request #38227 from tchaikov/wip-store-test

test/store_test: pass raw Formatter pointer as expected

Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
4 years agolibrbd: Fix variable declaration in capture list in lambda 38229/head
Willem Jan Withagen [Sat, 21 Nov 2020 21:58:13 +0000 (22:58 +0100)]
librbd: Fix variable declaration in capture list in lambda

Fixes: https://github.com/ceph/ceph/pull/38000
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
4 years agorgw: during GC defer, prevent new GC enqueue 38228/head
J. Eric Ivancich [Sat, 21 Nov 2020 16:10:35 +0000 (11:10 -0500)]
rgw: during GC defer, prevent new GC enqueue

With the new queue-based GC code, when a GC defer operation is
performed, it adds an "urgent" record to prevent GC from removing
objects that are still being read. It does not check whether the
objects are on the GC queue or not and that's OK for the urgent
record.

The code *also* adds a new GC entry to the queue to cause GC to occur
at a later time. This would be incorrect if there was no GC entry to
begin with, however. In such a case this would cause GC to delete tail
objects when no user-initiated remove has happend. In other words a
READ could cause a DELETE of tail objects and therefore data loss.

This fix prevents such a new GC entry from being enqueued, thus
preventing the data loss in this rare case. There is a new risk that
tail object orphans to be created, but as an immediate fix to prevent
data loss, this is appropriate and it is a rare event. A follow-on PR
that will handle these cases is likely.

This PR adds a level 0 log entry as a way to potentially confirm this
case is being triggered in real-world cases. In time, this log entry
should be deleted.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
4 years agotest/store_test: pass raw Formatter pointer as expected 38227/head
Kefu Chai [Sat, 21 Nov 2020 17:14:27 +0000 (01:14 +0800)]
test/store_test: pass raw Formatter pointer as expected

this addresses the FTBFS regression introduced by
f153a7031e56534723c0fc891869902c58acb473

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #38196 from dillaman/wip-48296
Mykola Golub [Sat, 21 Nov 2020 13:41:16 +0000 (15:41 +0200)]
Merge pull request #38196 from dillaman/wip-48296

pybind/mgr/rbd_support: delay creation of progress module events

Reviewed-by: Mykola Golub <mgolub@suse.com>
4 years agoMerge pull request #38223 from Rethan/fix_formatter_pointer
Kefu Chai [Sat, 21 Nov 2020 11:01:33 +0000 (19:01 +0800)]
Merge pull request #38223 from Rethan/fix_formatter_pointer

test: free Formatter pointers

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agotest/: use unique_ptr for some formatter whose pointers were not released. 38223/head
haoyixing [Sat, 21 Nov 2020 09:09:32 +0000 (17:09 +0800)]
test/: use unique_ptr for some formatter whose pointers were not released.

some code under test use formatter to output, but Formatter *f
was not freed like elsewere. So use unique_ptr to avoid this.

Signed-off-by: haoyixing <haoyixing@kuaishou.com>
4 years agoMerge pull request #38220 from neha-ojha/wip-fix-label-2
Neha Ojha [Fri, 20 Nov 2020 22:50:10 +0000 (14:50 -0800)]
Merge pull request #38220 from neha-ojha/wip-fix-label-2

.github/labeler.yml: fix pybind and common rules

Reviewed-by: Josh Durgin <jdurgin@redhat.com>