]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 years agotest/mon: fix compiler errors in MonMap unittest
Patrick Donnelly [Fri, 23 Oct 2020 23:28:08 +0000 (16:28 -0700)]
test/mon: fix compiler errors in MonMap unittest

The code atrophied. Clean this up.

The tests are disabled because they SIGSEGV during SetUp.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agotest/mon: build MonMap unittest
Patrick Donnelly [Fri, 23 Oct 2020 23:27:39 +0000 (16:27 -0700)]
test/mon: build MonMap unittest

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge pull request #37678 from ideepika/wip-drop-hammer-from-qa
Neha Ojha [Fri, 23 Oct 2020 15:35:02 +0000 (08:35 -0700)]
Merge pull request #37678 from ideepika/wip-drop-hammer-from-qa

qa: drop hammer branch qa tests

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
4 years agoMerge pull request #37193 from rhcs-dashboard/log_download
Lenz Grimmer [Fri, 23 Oct 2020 14:47:20 +0000 (16:47 +0200)]
Merge pull request #37193 from rhcs-dashboard/log_download

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
4 years agoMerge pull request #36449 from s0nea/wip-dashboard-osd-flags-indiv
Lenz Grimmer [Fri, 23 Oct 2020 14:45:28 +0000 (16:45 +0200)]
Merge pull request #36449 from s0nea/wip-dashboard-osd-flags-indiv

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
4 years agoMerge pull request #37440 from Devp00l/wip-44433
Lenz Grimmer [Fri, 23 Oct 2020 11:57:51 +0000 (13:57 +0200)]
Merge pull request #37440 from Devp00l/wip-44433

mgr/dashboard: Add clay plugin support

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
4 years agoMerge pull request #37512 from tspmelo/wip-ng-validation
Lenz Grimmer [Fri, 23 Oct 2020 11:29:32 +0000 (13:29 +0200)]
Merge pull request #37512 from tspmelo/wip-ng-validation

mgr/dashboard: Extract ng-bootstrap-form-validation

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
4 years agoMerge pull request #37748 from Rethan/msg_remove_dispatch_strategy
Kefu Chai [Fri, 23 Oct 2020 10:09:20 +0000 (18:09 +0800)]
Merge pull request #37748 from Rethan/msg_remove_dispatch_strategy

msg: move DispatchStrategy into test/

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #37404 from badone/wip-docker-test-allow-persistent-containers
Kefu Chai [Fri, 23 Oct 2020 08:15:35 +0000 (16:15 +0800)]
Merge pull request #37404 from badone/wip-docker-test-allow-persistent-containers

test/docker-test: Allow persistent containers

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #36754 from rzarzynski/wip-bs-filewriter-appender
Kefu Chai [Fri, 23 Oct 2020 06:19:32 +0000 (14:19 +0800)]
Merge pull request #36754 from rzarzynski/wip-bs-filewriter-appender

common/bl, os/bluestore: eradicate bufferlist rebuilds caused by FileWriter of BlueFS

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agotest/docker-test: Allow persistent containers 37404/head
Brad Hubbard [Fri, 25 Sep 2020 02:26:34 +0000 (12:26 +1000)]
test/docker-test: Allow persistent containers

It can be useful to allow the container to persist for debugging
purposes. Also show the command used to create the container.

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
4 years agomsg: move DispatchStrategy into test/ 37748/head
haoyixing [Sun, 18 Oct 2020 01:23:48 +0000 (09:23 +0800)]
msg: move DispatchStrategy into test/

Since commit cc9a914, xio related code were all removed, which made
direct_messenger become the only user of DispatchStraegy. So move
these code there.

Signed-off-by: haoyixing <haoyixing@kuaishou.com>
4 years agoMerge pull request #37760 from athanatos/sjust/wip-fix-lba-leaf
Kefu Chai [Fri, 23 Oct 2020 00:33:48 +0000 (08:33 +0800)]
Merge pull request #37760 from athanatos/sjust/wip-fix-lba-leaf

crimson/seastore: remove invalid mutate_mapping assert

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge PR #36204 into master
Patrick Donnelly [Fri, 23 Oct 2020 00:17:37 +0000 (17:17 -0700)]
Merge PR #36204 into master

* refs/pull/36204/head:
client: add command_lock support
client: defer swapping the newmap to mdsmap
client: try to grab the client_lock when needed
client: clean up the client code

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agocrimson/os/seastore/.../lba_btree_node_impl: remove invalid mutate_mapping assert 37760/head
Samuel Just [Thu, 22 Oct 2020 23:08:07 +0000 (16:08 -0700)]
crimson/os/seastore/.../lba_btree_node_impl: remove invalid mutate_mapping assert

A leaf node can have fewer than min_capacity items when it is the root.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agotest/crimson/seastore/test_btree_lba_manager: test mutate_mapping on more split/merge...
Samuel Just [Thu, 22 Oct 2020 23:07:06 +0000 (16:07 -0700)]
test/crimson/seastore/test_btree_lba_manager: test mutate_mapping on more split/merge states

incref_mapping has a slightly different relationship with merge than
decref_mapping, update split/merge test to ensure that we call into
mutate_mapping at each step as the nodes fill, split, empty, and merge.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agoMerge pull request #37715 from anthonyeleven/rados-doc-improvements
zdover23 [Thu, 22 Oct 2020 23:00:51 +0000 (09:00 +1000)]
Merge pull request #37715 from anthonyeleven/rados-doc-improvements

doc/rados: operations.rst: clarity, detail, modernization

Reviewed-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge PR #37702 into master
Patrick Donnelly [Thu, 22 Oct 2020 19:58:15 +0000 (12:58 -0700)]
Merge PR #37702 into master

* refs/pull/37702/head:
mon/MDSMonitor: do not ignore mds's down:dne request

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge PR #37663 into master
Patrick Donnelly [Thu, 22 Oct 2020 19:57:46 +0000 (12:57 -0700)]
Merge PR #37663 into master

* refs/pull/37663/head:
msg/MFSMap: remove unused variable

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge PR #37313 into master
Patrick Donnelly [Thu, 22 Oct 2020 19:55:54 +0000 (12:55 -0700)]
Merge PR #37313 into master

* refs/pull/37313/head:
cephfs-mirror: restart mirroring on blocklist
cephfs-mirror: public method to fetch peer list
cephfs-mirror: dump rados address in "fs mirror status" asok command
cephfs-mirror: handle blocklist errors during rewatch
cephfs-mirror: periodically drive mirror enable, disable and peer updates
cephfs-mirror: identify a ceph filesystem using (id, name)
cephfs-mirror: introduce Filesystem type
cephfs-mirror: record failed FSMirror instances
cephfs-mirror: protect FSMirror::is_stopping() under lock
cephfs-mirror: unregister asok commands outside lock
cephfs-mirror: spawn peer replayers on peer changes
cephfs-mirror: s/blacklist/blocklist/i
cephfs-mirror: s/dir_name/dir_path/

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge PR #36004 into master
Patrick Donnelly [Thu, 22 Oct 2020 19:53:44 +0000 (12:53 -0700)]
Merge PR #36004 into master

* refs/pull/36004/head:
mds: detect mds-mds messages not of type MMDSOp
messages: inherit MMDSPing and MMDSMetrics from MMDSOp

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge PR #36544 into master
Patrick Donnelly [Thu, 22 Oct 2020 19:52:01 +0000 (12:52 -0700)]
Merge PR #36544 into master

* refs/pull/36544/head:
vstart_runner: omit result line only when testcases are run one by one
vstart_runner: don't quit running testsuite on a test failure

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agomgr/dashboard: Extract ng-bootstrap-form-validation 37512/head
Tiago Melo [Thu, 1 Oct 2020 15:44:43 +0000 (15:44 +0000)]
mgr/dashboard: Extract ng-bootstrap-form-validation

Remove ng-bootstrap-form-validation and
extract part of its code into the dashboard.

Fixes: https://tracker.ceph.com/issues/47721
Signed-off-by: Tiago Melo <tmelo@suse.com>
4 years agoMerge pull request #35355 from ofriedma/wip-ofriedma-beast-timeout
Casey Bodley [Thu, 22 Oct 2020 14:37:05 +0000 (10:37 -0400)]
Merge pull request #35355 from ofriedma/wip-ofriedma-beast-timeout

rgw: Add request timeout to beast

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #37666 from pritha-srivastava/wip-rgw-gc-list-loop
Casey Bodley [Thu, 22 Oct 2020 14:14:33 +0000 (10:14 -0400)]
Merge pull request #37666 from pritha-srivastava/wip-rgw-gc-list-loop

rgw/gc: fixing the condition when marker for a queue is

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
4 years agoMerge pull request #37409 from pritha-srivastava/wip-rgw-gc-perf-counter
Casey Bodley [Thu, 22 Oct 2020 14:13:18 +0000 (10:13 -0400)]
Merge pull request #37409 from pritha-srivastava/wip-rgw-gc-perf-counter

rgw/gc: fix for incrementing the perf counter 'gc_retire_object'

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
4 years agoMerge PR #37752 into master
Patrick Donnelly [Thu, 22 Oct 2020 13:55:02 +0000 (06:55 -0700)]
Merge PR #37752 into master

* refs/pull/37752/head:
vstart.sh: fix fs set max_mds bug

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #36199 from ofriedma/wip-ofriedma-lc-fixes-tags-and
Matt Benjamin [Thu, 22 Oct 2020 12:16:25 +0000 (08:16 -0400)]
Merge pull request #36199 from ofriedma/wip-ofriedma-lc-fixes-tags-and

rgw: fix expiration header returned even if there is only one tag in …

4 years agomgr/dashboard: Created a Download and Copy-to-Clipboard option for the logs 37193/head
Nizamudeen A [Wed, 16 Sep 2020 13:54:31 +0000 (19:24 +0530)]
mgr/dashboard: Created a Download and Copy-to-Clipboard option for the logs

Created Download Button Component.
Added a Download and Copy-to-Clipboard button for the Cluster and Audit Logs in the Log section. Also added a flag in the current Copy2ClipboardButton directive to indicate the incoming string is actually a log.

Fixes: https://tracker.ceph.com/issues/47498
Signed-off-by: Nizamudeen A <nia@redhat.com>
4 years agoMerge pull request #37745 from tchaikov/wip-crimson-recovery-cleanup
Kefu Chai [Thu, 22 Oct 2020 11:02:36 +0000 (19:02 +0800)]
Merge pull request #37745 from tchaikov/wip-crimson-recovery-cleanup

crimson/osd: add more privacy

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agovstart.sh: fix fs set max_mds bug 37752/head
jinmyeonglee [Thu, 22 Oct 2020 08:25:51 +0000 (17:25 +0900)]
vstart.sh: fix fs set max_mds bug

Fix a bug where the name used when creating a volume and the name used when setting max_mds were different.
Fixes: https://tracker.ceph.com/issues/47946
Signed-off-by: Jinmyeong Lee <jinmyeong.lee@linecorp.com>
4 years agoMerge pull request #37557 from wjwithagen/wjw-fix-warnings-clang-iterators
Kefu Chai [Thu, 22 Oct 2020 05:45:56 +0000 (13:45 +0800)]
Merge pull request #37557 from wjwithagen/wjw-fix-warnings-clang-iterators

mds,osd: fix clang warnings to prevent unneeded copies

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agomds: detect mds-mds messages not of type MMDSOp 36004/head
Jos Collin [Thu, 15 Oct 2020 11:30:50 +0000 (17:00 +0530)]
mds: detect mds-mds messages not of type MMDSOp

* Detect mds-mds messages not of type MMDSOp.
* Return true from MetricAggregator::ms_dispatch2 only when the peer is an MDS and the metrics is handled.

Fixes: https://tracker.ceph.com/issues/46426
Signed-off-by: Jos Collin <jcollin@redhat.com>
4 years agomessages: inherit MMDSPing and MMDSMetrics from MMDSOp
Jos Collin [Fri, 10 Jul 2020 07:38:43 +0000 (13:08 +0530)]
messages: inherit MMDSPing and MMDSMetrics from MMDSOp

The inter-MDS messages MMDSPing and MMDSMetrics should inherit from
MMDSOp before the MDS dispatch the message.

Fixes: https://tracker.ceph.com/issues/46426
Signed-off-by: Jos Collin <jcollin@redhat.com>
4 years agoMerge pull request #37709 from tchaikov/wip-common-pick-address
Kefu Chai [Thu, 22 Oct 2020 04:58:40 +0000 (12:58 +0800)]
Merge pull request #37709 from tchaikov/wip-common-pick-address

common/pick_address: fail if cannot bind with specified network family

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agocrimson/osd: add more privacy 37745/head
Kefu Chai [Thu, 22 Oct 2020 04:40:37 +0000 (12:40 +0800)]
crimson/osd: add more privacy

* reorder the member variable and member function definitions so the
  private members are listed at the end of class. as requested by
  the CodingStyle
* mark some member variables and member functions private, as long as
  they are not used by other classes or non-friend classes.
* document UrgentRecovery
* refactor BackgroundRecovery::get_scheduler_params() to dedup
  the comments

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #37739 from ivancich/wip-rados-ls-flush
J. Eric Ivancich [Wed, 21 Oct 2020 20:39:42 +0000 (16:39 -0400)]
Merge pull request #37739 from ivancich/wip-rados-ls-flush

tools/rados: flush formatter periodically during json output of `rados ls`

Reviewed-by: Adam Emerson <aemerson@redhat.com>
4 years agoMerge PR #37717 into master
Patrick Donnelly [Wed, 21 Oct 2020 20:33:21 +0000 (13:33 -0700)]
Merge PR #37717 into master

* refs/pull/37717/head:
doc/cephfs: add sample cephfs-shell.conf

Reviewed-by: Varsha Rao <varao@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge pull request #37622 from ivancich/wip-rgw-orphan-list-comma
J. Eric Ivancich [Wed, 21 Oct 2020 18:33:38 +0000 (14:33 -0400)]
Merge pull request #37622 from ivancich/wip-rgw-orphan-list-comma

rgw: rgw-orphan-list should use "plain" formatted `rados ls` output

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
4 years agotools/rados: flush formatter periodically during json output of `rados ls` 37739/head
J. Eric Ivancich [Wed, 21 Oct 2020 14:32:30 +0000 (10:32 -0400)]
tools/rados: flush formatter periodically during json output of `rados ls`

While `rados ls` is emitting object info through a json formatter,
flush the formatter after there are at least 4096 bytes are buffered
for output.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
4 years agodoc/rados/operations: clarity, detail, modernization 37715/head
Anthony D'Atri [Tue, 20 Oct 2020 07:51:44 +0000 (00:51 -0700)]
doc/rados/operations: clarity, detail, modernization

Signed-off-by: Anthony D'Atri <anthony.datri@gmail.com>
4 years agoMerge pull request #37615 from rhcs-dashboard/remove-last-change-column
Tatjana Dehler [Wed, 21 Oct 2020 16:32:55 +0000 (18:32 +0200)]
Merge pull request #37615 from rhcs-dashboard/remove-last-change-column

mgr/dashboard: Remove the "Last change" column in Pools table

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
4 years agomgr/dashboard: assign flags to single OSDs 36449/head
Tatjana Dehler [Mon, 27 Jul 2020 09:33:19 +0000 (11:33 +0200)]
mgr/dashboard: assign flags to single OSDs

Add the possibility to assign the flags ['noup',
'nodown', 'noin', 'noout'] to single OSDs.

Fixes: https://tracker.ceph.com/issues/40739
Signed-off-by: Tatjana Dehler <tdehler@suse.com>
4 years agoMerge pull request #37088 from Devp00l/wip-37408
Lenz Grimmer [Wed, 21 Oct 2020 13:06:52 +0000 (15:06 +0200)]
Merge pull request #37088 from Devp00l/wip-37408

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
4 years agoMerge pull request #37416 from tspmelo/wip-rbd-clone
Lenz Grimmer [Wed, 21 Oct 2020 13:06:27 +0000 (15:06 +0200)]
Merge pull request #37416 from tspmelo/wip-rbd-clone

mgr/dashboard: Disable RBD clone action when conditions are not met

Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
4 years agoMerge pull request #37396 from SMIL-IT/fix-keycount
Daniel Gryniewicz [Wed, 21 Oct 2020 12:48:03 +0000 (08:48 -0400)]
Merge pull request #37396 from SMIL-IT/fix-keycount

rgw: fix: S3 API KeyCount incorrect return.

4 years agomgr/dashboard: remove custom class `oa-hr-small`
Tatjana Dehler [Thu, 1 Oct 2020 12:59:28 +0000 (14:59 +0200)]
mgr/dashboard: remove custom class `oa-hr-small`

Signed-off-by: Tatjana Dehler <tdehler@suse.com>
4 years agomgr/dashboard: remove unnecessary blank
Tatjana Dehler [Wed, 2 Sep 2020 14:09:18 +0000 (16:09 +0200)]
mgr/dashboard: remove unnecessary blank

Signed-off-by: Tatjana Dehler <tdehler@suse.com>
4 years agoMerge pull request #37727 from dillaman/wip-librbd-readresult-clip
Mykola Golub [Wed, 21 Oct 2020 08:14:24 +0000 (11:14 +0300)]
Merge pull request #37727 from dillaman/wip-librbd-readresult-clip

librbd: remove io::ReadResult::set_clip_length

Reviewed-by: Mykola Golub <mgolub@suse.com>
4 years agoMerge pull request #37726 from dillaman/wip-librbd-remove-image-cache
Mykola Golub [Wed, 21 Oct 2020 08:13:35 +0000 (11:13 +0300)]
Merge pull request #37726 from dillaman/wip-librbd-remove-image-cache

librbd: remove remainder of ImageCache API hooks

Reviewed-by: Mykola Golub <mgolub@suse.com>
4 years agoMerge pull request #37614 from smithfarm/wip-revert-suse-podman-requires
Kefu Chai [Wed, 21 Oct 2020 07:23:06 +0000 (15:23 +0800)]
Merge pull request #37614 from smithfarm/wip-revert-suse-podman-requires

Revert "rpm: on SUSE, podman is required for cephadm to work" and "spec: Podman (temporarily) requires apparmor-abstractions on suse"

Reviewed-by: Michael Fritch <mfritch@suse.com>
4 years agodoc/cephfs: add sample cephfs-shell.conf 37717/head
Rishabh Dave [Mon, 28 Sep 2020 05:38:16 +0000 (11:08 +0530)]
doc/cephfs: add sample cephfs-shell.conf

And elaborate the description about it.

Fixes: https://tracker.ceph.com/issues/43028
Signed-off-by: Rishabh Dave <ridave@redhat.com>
4 years agoMerge pull request #37403 from athanatos/sjust/wip-seastore-gc
Kefu Chai [Wed, 21 Oct 2020 03:01:42 +0000 (11:01 +0800)]
Merge pull request #37403 from athanatos/sjust/wip-seastore-gc

crimson/seastore: add online gc to seastore

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #37731 from adk3798/cephadm-logs
Sebastian Wagner [Tue, 20 Oct 2020 22:51:49 +0000 (00:51 +0200)]
Merge pull request #37731 from adk3798/cephadm-logs

doc: document additional journal args in cephadm logs command

Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
4 years agodoc: document additional journal args in cephadm logs command 37731/head
Adam King [Tue, 20 Oct 2020 20:08:28 +0000 (16:08 -0400)]
doc: document additional journal args in cephadm logs command

Signed-off-by: Adam King <adking@redhat.com>
4 years agotest/crimson/seastore/test_btree_lba_manager: fix get_overlap 37403/head
Samuel Just [Mon, 19 Oct 2020 22:14:43 +0000 (15:14 -0700)]
test/crimson/seastore/test_btree_lba_manager: fix get_overlap

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agotest/crimson/seastore/test_btree_lba_manager: add single transaction split/merge...
Samuel Just [Mon, 19 Oct 2020 22:14:28 +0000 (15:14 -0700)]
test/crimson/seastore/test_btree_lba_manager: add single transaction split/merge test

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/.../lba_btree_node_impl: always return absolute or record relativ...
Samuel Just [Mon, 19 Oct 2020 20:14:21 +0000 (13:14 -0700)]
crimson/os/seastore/.../lba_btree_node_impl: always return absolute or record relative addrs

insert and lookup_range should return absolute or record-relative addrs,
never block relative.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/.../lba_btree_node_impl: use node_[un]resolve_vals
Samuel Just [Mon, 19 Oct 2020 20:13:26 +0000 (13:13 -0700)]
crimson/os/seastore/.../lba_btree_node_impl: use node_[un]resolve_vals

Implement node_[un]resolve_vals to transform values to/from block relative
representations when copying out of/in to newly created blocks.  This can
happen when splitting a node which has had entries added during the
same transaction, or itself was created during the transaction.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/common/fixed_kv_node_layout: add support for node dependent values
Samuel Just [Mon, 19 Oct 2020 20:10:32 +0000 (13:10 -0700)]
crimson/common/fixed_kv_node_layout: add support for node dependent values

node_[un]resolve_vals can be used by implementations to transform vals
during split and merge.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agotest/crimson/seastore/test_transaction_manager: add test for large single-transaction...
Samuel Just [Mon, 19 Oct 2020 21:11:31 +0000 (14:11 -0700)]
test/crimson/seastore/test_transaction_manager: add test for large single-transaction split/merge

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/lba_manager/btree: fix lookup_range, scan_* references with weak...
Samuel Just [Mon, 19 Oct 2020 21:44:16 +0000 (14:44 -0700)]
crimson/os/seastore/lba_manager/btree: fix lookup_range, scan_* references with weak transactions

Weak transactions won't keep references in memory as we traverse
the tree, update each recursive call to ensure lifecycle of
this.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agotest/crimson/seastore: extract common test logic for transaction_maanager initialization
Samuel Just [Wed, 14 Oct 2020 07:13:40 +0000 (00:13 -0700)]
test/crimson/seastore: extract common test logic for transaction_maanager initialization

This should make it somewhat easier to avoid breaking tests that
depend on transaction_manager.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/segment_cleaner: add online gc
Samuel Just [Thu, 17 Sep 2020 23:40:50 +0000 (16:40 -0700)]
crimson/os/seastore/segment_cleaner: add online gc

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agotest/crimson/seastore/test_transaction_manager: close and reopen tm after mkfs
Samuel Just [Thu, 17 Sep 2020 23:11:26 +0000 (16:11 -0700)]
test/crimson/seastore/test_transaction_manager: close and reopen tm after mkfs

We'll just require this generally.  Most of the time, mkfs will be a
standalone operation anyway.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/lba_manager: add get_physical_extent_if_live
Samuel Just [Thu, 17 Sep 2020 22:56:20 +0000 (15:56 -0700)]
crimson/os/seastore/lba_manager: add get_physical_extent_if_live

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/cache: add public, cache aware get_extent_by_type variants
Samuel Just [Thu, 17 Sep 2020 22:49:17 +0000 (15:49 -0700)]
crimson/os/seastore/cache: add public, cache aware get_extent_by_type variants

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agoos/seastore/journal: replay_segment: skip replay on deltas to released segments
Samuel Just [Thu, 17 Sep 2020 22:45:56 +0000 (15:45 -0700)]
os/seastore/journal: replay_segment: skip replay on deltas to released segments

See comment.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: fix get_journal_seq
Samuel Just [Thu, 17 Sep 2020 22:28:06 +0000 (15:28 -0700)]
crimson/os/seastore/journal: fix get_journal_seq

current_journal_segment_seq was misleading -- it's actually the value
for the next one.  Fix naming and update get_journal_seq.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: add journal_replay check and debugging
Samuel Just [Thu, 17 Sep 2020 22:15:43 +0000 (15:15 -0700)]
crimson/os/seastore: add journal_replay check and debugging

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: add segment_header_t operator<<
Samuel Just [Thu, 17 Sep 2020 22:15:05 +0000 (15:15 -0700)]
crimson/os/seastore/journal: add segment_header_t operator<<

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/cache: add duplicate_for_write debugging
Samuel Just [Thu, 17 Sep 2020 22:14:11 +0000 (15:14 -0700)]
crimson/os/seastore/cache: add duplicate_for_write debugging

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/journal: check offset against segment length in replay
Samuel Just [Tue, 1 Sep 2020 23:08:01 +0000 (16:08 -0700)]
crimson/os/journal: check offset against segment length in replay

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: no need for p2roundup, to_write must already be aligned
Samuel Just [Fri, 28 Aug 2020 09:55:15 +0000 (02:55 -0700)]
crimson/os/seastore/journal: no need for p2roundup, to_write must already be aligned

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/cache: simplify new extent paddr mapping during complete_transaction
Samuel Just [Fri, 28 Aug 2020 09:54:54 +0000 (02:54 -0700)]
crimson/os/seastore/cache: simplify new extent paddr mapping during complete_transaction

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: improve encode_record debugging
Samuel Just [Tue, 1 Sep 2020 23:08:12 +0000 (16:08 -0700)]
crimson/os/seastore/journal: improve encode_record debugging

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: use scan_segment to add extent scan
Samuel Just [Fri, 4 Sep 2020 07:46:40 +0000 (00:46 -0700)]
crimson/os/seastore/journal: use scan_segment to add extent scan

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: generalize replay scan
Samuel Just [Fri, 4 Sep 2020 07:46:19 +0000 (00:46 -0700)]
crimson/os/seastore/journal: generalize replay scan

We'll need to do at least two forms of scan:
- deltas for replay
- extents for gc

Most of the mechanics are common, however, so this patch
hoists the common machinery into scan_segemnt.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: record extents types and laddr in record metadata
Samuel Just [Fri, 4 Sep 2020 04:17:52 +0000 (21:17 -0700)]
crimson/os/seastore/journal: record extents types and laddr in record metadata

We'll need this to scan segments for live blocks.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: use metadata size for block base rather than assuming...
Samuel Just [Fri, 28 Aug 2020 08:53:41 +0000 (01:53 -0700)]
crimson/os/seastore/journal: use metadata size for block base rather than assuming one block

Uncaught because it's rare for the metadata prefix to exceed 4k.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: add space accounting to segment_cleaner and wire in
Samuel Just [Thu, 27 Aug 2020 07:14:30 +0000 (00:14 -0700)]
crimson/os/seastore: add space accounting to segment_cleaner and wire in

Adds support for space accounting to SegmentCleaner and wires into
Journal, Cache, and tests.

SegmentCleaner has two tracking implementations, SpaceTrackerSimple
and SpaceTrackerDetailed.  SpaceTrackerSimple simply keeps a count
of live bytes and is intended to be the normal implementation.
SpaceTrackerDetailed maintains a bitmap and is simply useful
for debugging unit tests.  It may be removed in the future.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agorgw: rgw-orphan-list should use "plain" formatted `rados ls` output 37622/head
J. Eric Ivancich [Fri, 9 Oct 2020 20:06:55 +0000 (16:06 -0400)]
rgw: rgw-orphan-list should use "plain" formatted `rados ls` output

The previous version that used "json-pretty" output for `rados ls`
added complications due to json's escaping of special characters. So
this version returns to the "plain" output for `rados ls` but deals
with entries (oids) that might have namespaces and/or locators as
well.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
4 years agolibrbd: remove io::ReadResult::set_clip_length 37727/head
Jason Dillaman [Tue, 20 Oct 2020 17:10:06 +0000 (13:10 -0400)]
librbd: remove io::ReadResult::set_clip_length

Combined the functionality with the newer 'set_image_extents' call
to simplify the call-site logic for IO reads.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
4 years agoMerge PR #37707 into master
Patrick Donnelly [Tue, 20 Oct 2020 15:21:22 +0000 (08:21 -0700)]
Merge PR #37707 into master

* refs/pull/37707/head:
doc: document the mds_autoscaler mgr plugin

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agolibrbd: remove remainder of ImageCache API hooks 37726/head
Jason Dillaman [Tue, 20 Oct 2020 15:13:11 +0000 (11:13 -0400)]
librbd: remove remainder of ImageCache API hooks

With the incorporation of the ImageDispatcher, there is no longer a
need for the ImageCache (and related) classes which were added as
a temporary workaround to incorporate the PWL cache.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
4 years agoclient: add command_lock support 36204/head
Xiubo Li [Thu, 24 Sep 2020 06:27:34 +0000 (14:27 +0800)]
client: add command_lock support

The Client::command_table member could get rid of the client_lock.
And this could make the client have a higher concurrency.

Fixes: https://tracker.ceph.com/issues/46620
Signed-off-by: Xiubo Li <xiubli@redhat.com>
4 years agoclient: defer swapping the newmap to mdsmap
Xiubo Li [Wed, 15 Jul 2020 02:40:35 +0000 (10:40 +0800)]
client: defer swapping the newmap to mdsmap

This is preparing for adding the command lock support.

For the new mds map we could access it without the client_lock, so
before swaping it to the `mdsmap` member, it will be safe to access.

With this we can defer to hold the client_lock and it will be safe
for the new command_lock to avoid possible dead lock in future or
something else.

Fixes: https://tracker.ceph.com/issues/46620
Signed-off-by: Xiubo Li <xiubli@redhat.com>
4 years agoclient: try to grab the client_lock when needed
Xiubo Li [Thu, 24 Sep 2020 06:15:31 +0000 (14:15 +0800)]
client: try to grab the client_lock when needed

Signed-off-by: Xiubo Li <xiubli@redhat.com>
4 years agoclient: clean up the client code
Xiubo Li [Thu, 24 Sep 2020 05:48:06 +0000 (13:48 +0800)]
client: clean up the client code

Signed-off-by: Xiubo Li <xiubli@redhat.com>
4 years agoMerge pull request #37692 from tchaikov/wip-bump-up-pytest
Kefu Chai [Tue, 20 Oct 2020 12:07:55 +0000 (20:07 +0800)]
Merge pull request #37692 from tchaikov/wip-bump-up-pytest

pybind/mgr/dashboard: s/pytest<4/pytest/

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
4 years agopybind/mgr/dashboard: disable too-many-branches lint warning 37692/head
Kefu Chai [Tue, 20 Oct 2020 11:04:40 +0000 (19:04 +0800)]
pybind/mgr/dashboard: disable too-many-branches lint warning

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/dashboard: use setUpClass for initializeing class
Kefu Chai [Fri, 16 Oct 2020 17:10:24 +0000 (01:10 +0800)]
pybind/mgr/dashboard: use setUpClass for initializeing class

instead of relying on __init__(), use setUpClass() to initialize class
for testing. it turns out in pytest > 4, __init__() is called for the
test class but the attributes of the instantiated class is in turn overriden.

so we have to use setUpClass to do this job.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/dashboard: refactor overlong statement
Kefu Chai [Tue, 20 Oct 2020 10:33:29 +0000 (18:33 +0800)]
pybind/mgr/dashboard: refactor overlong statement

to silence lint warning like:

services/tcmu_service.py:64:39: E126 continuation line over-indented for hanging indent':'./services/tcmu_service.py:64:39: E126 continuation line over-indented for hanging indent'}
2: 1     E126 continuation line over-indented for hanging indent

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/dashboard: reindent to appease lint
Kefu Chai [Tue, 20 Oct 2020 10:14:40 +0000 (18:14 +0800)]
pybind/mgr/dashboard: reindent to appease lint

silences warning like:

************* Module dashboard.services.tcmu_service
services/tcmu_service.py:64:0: C0330: Wrong continued indentation (add 18 spaces).
                    or [[0, 0]])[-1][1] / 1000000000
                    ^                 | (bad-continuation)

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/dashboard: s/pytest<4/pytest/
Kefu Chai [Tue, 13 Oct 2020 08:09:42 +0000 (16:09 +0800)]
pybind/mgr/dashboard: s/pytest<4/pytest/

to address following failure:

    The user requested pytest<4
    pytest-cov 2.10.1 depends on pytest>=4.6

when building the target of "mgr-dashboard-virtualenv"

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/dashboard: bump flake8 to 3.8.4
Kefu Chai [Tue, 13 Oct 2020 07:11:14 +0000 (15:11 +0800)]
pybind/mgr/dashboard: bump flake8 to 3.8.4

to address the failure of

The conflict is caused by:
    flake8 3.7.8 depends on pycodestyle<2.6.0 and >=2.5.0
    autopep8 1.5.4 depends on pycodestyle>=2.6.0

when building the "mgr-dashboard-venv" target

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agotools/setup-virtualenv.sh: pass --use-feature=2020-resolver to pip
Kefu Chai [Thu, 8 Oct 2020 07:13:36 +0000 (15:13 +0800)]
tools/setup-virtualenv.sh: pass --use-feature=2020-resolver to pip

as long as pip supports this option, pass it to `pip install`

to silence warnings and errors like:

ERROR: After October 2020 you may experience errors when installing or updating packages. This is because pip will change the way that it resolves dependency conflicts.

We recommend you use --use-feature=2020-resolver to test your packages with the new resolver before it becomes the default.

autopep8 1.5.4 requires pycodestyle>=2.6.0, but you'll have pycodestyle 2.5.0 which is incompatible.
pytest-cov 2.10.1 requires pytest>=4.6, but you'll have pytest 3.10.1 which is incompatible.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #36948 from bk201/wip-46492
Lenz Grimmer [Tue, 20 Oct 2020 10:58:51 +0000 (12:58 +0200)]
Merge pull request #36948 from bk201/wip-46492

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Varsha Rao <varao@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
4 years agorgw/gc: fixing the condition when marker for a queue is 37666/head
Pritha Srivastava [Wed, 14 Oct 2020 11:05:50 +0000 (16:35 +0530)]
rgw/gc: fixing the condition when marker for a queue is
always reset to empty which causes RGWGC::list to get stuck in
a loop, which ultimately is broken out of when the queue's truncated
flag is false.

1. Check for entries size also while evaluating whether objects cache for
a gc object should be marked as 'transitioned' in case of cls_rgw_gc_list.
When there are no entries, we get back a return value of 0, and the
object cache is not marked as 'transitioned'.

2. Also for the last gc object, we need to check whether the queue is still
under process and set the correct flag.

Missing the two conditions above causes the GC::list to loop continously
over the same gc object.

Fixes: https://tracker.ceph.com/issues/47909
Signed-off-by: Pritha Srivastava <prsrivas@redhat.com>
4 years agorgw/gc: fix for incrementing the perf counter 'gc_retire_object' 37409/head
Pritha Srivastava [Fri, 25 Sep 2020 07:51:18 +0000 (13:21 +0530)]
rgw/gc: fix for incrementing the perf counter 'gc_retire_object'
in the new gc queue code for omap offload, when gc objects from queue
are deleted. This was missed out initially.

Fixes: https://tracker.ceph.com/issues/47908
Signed-off-by: Pritha Srivastava <prsrivas@redhat.com>