]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
2 years agomgr/cephadm: fix handling of mgr upgrades with 3 or more mgrs 48258/head
Adam King [Mon, 26 Sep 2022 18:02:19 +0000 (14:02 -0400)]
mgr/cephadm: fix handling of mgr upgrades with 3 or more mgrs

Fixes: https://tracker.ceph.com/issues/57675
When daemons are upgraded by cephadm, there are two criteria taken into
account for a daemon to be considered totally upgraded. The first is the
container image the daemon actually has currently. The second is the container
image of the mgr that deployed the daemon. I'll refer to these as a daemon
having the "correct version" and "correct deployed by". For reference,
the correct deployed by needs to be tracked as cephadm may change
something about the unit files it generates between versions and not
making sure daemons are deployed by the current version of cephadm
risks some obscure bugs.

The function _detect_need_upgrade takes a list of daemons and returns
two new lists. The first is all daemons from the input list that
are on the wrong version. The second are all daemons that are on the
right version but deployed by the wrong version. Additionally it returns
a bool to say whether the current active mgr must be upgraded (i.e. it
would belong in either of the two returned lists). Prior to this change,
how it would work is the second list (list of daemons that are on the right
version but have the wrong deployed by version) would simply be added to
the first list if the active mgr does not need to be upgraded. The idea
is that if you are upgrading from X image to Y image, we can only
really "fix" the deployed by version of the daemon if the active mgr
is on the Y version as it will be the one deploying the daemon. So if
the active mgr is not upgraded we can just ignore the daemons that just
have the wrong deployed by version in hte current iteration. All of this is
really only important when the mgr daemons are being upgraded. After all the
mgrs are upgraded any future upgrades of daemons will be done by a mgr on
the new version so deployed by version will always get completed
along with the version of the daemon itself. This system also works fine
for the typical 2 mgr setup.

Imagine mgr A and B on version X deployed by version X being upgraded to
version Y with A as active. First A deploys B with version Y. Now B
has version Y and deployed by version X. A then fails over to B as it
sees it needs to be upgraded. B then upgrades A so A now has version Y
and deployed by version Y. B then fails over to A as it sees it needs
to be upgraded as its deployed by version is still X. Finally, A
redeploys B and both mgrs are fully upgraded and everything is fine.

However, things can get trickier with 3 or more mgrs due to the
fact that cephadm does not control which other mgr takes over after
a failover. Imagine a similar scenario but now you have mgr
A, B, and C. First A will upgrade B and C to Y so they now
are both on version Y with deployed by version X. It then fails
over since it needs to be upgraded and let's say B takes over as
active. B then upgrade A so it now has version Y and deployed by
version Y. However, it will not redeploy C even though it should
as, given it sees that it needs to be upgraded due to its deployed by
version being wrong, it doesn't touch any daemon that just needs its
deployed by version fixed. It then fails over and lets say C takes
over. Since it still has the wrong deployed by version and therefore
thinks that it needs to be upgraded,  it won't touch B since that
only needs its deployed by version fixed. It sees that it needs
to be upgraded however so it fails over. Lets say B takes over again.
You can see how we can end up in a loop here where B and C say they
need to be upgraded but never upgrade each other. It seems from what
I've seen that which mgr is picked after a failover isn't totally
random so this type of scenario can actually happen and it can get
stuck here until the user takes some action. The change here is
to, instead of not touching daemons that needs their deployed by version
fixed if the active mgr needs upgrade, only don't touch that list
if the active mgr is on the wrong version. So in our example scenario
B would still have upgraded C the first time around as it would
see it is on the correct version Y and can therefore fix the deployed
by version for C. This is what the check always should have been
but since most of the testing is with 2 mgr daemons and even with
more its by chance you end up in the loop this issue wasn't seen.

Will add that it is also possible to end up in this loop with
only 2 mgr daemons if some amount of manual upgrading of the mgr
daemons is done.

Signed-off-by: Adam King <adking@redhat.com>
2 years agoMerge pull request #48197 from phlogistonjohn/jjm-cephadm-cov-podman
Adam King [Mon, 26 Sep 2022 15:43:47 +0000 (11:43 -0400)]
Merge pull request #48197 from phlogistonjohn/jjm-cephadm-cov-podman

cephadm: add test cases for container engine classes

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Michael Fritch <mfritch@suse.com>
2 years agoMerge pull request #47131 from aaryanporwal/vrt-doc-update
Ernesto Puerta [Mon, 26 Sep 2022 11:22:11 +0000 (13:22 +0200)]
Merge pull request #47131 from aaryanporwal/vrt-doc-update

doc/dev: mgr/dashboard: Replace broken link

Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2 years agoMerge pull request #48217 from cyx1231st/wip-crimson-buffer
Yingxin [Mon, 26 Sep 2022 01:23:35 +0000 (09:23 +0800)]
Merge pull request #48217 from cyx1231st/wip-crimson-buffer

crimson: create buffer from temporary_buffer with foreign-ptr by default

Reviewed-by: Samuel Just <sjust@redhat.com>
2 years agoMerge pull request #48235 from zdover23/wip-doc-2022-09-25-dev-guide-basic-workflow...
zdover23 [Sun, 25 Sep 2022 04:36:11 +0000 (14:36 +1000)]
Merge pull request #48235 from zdover23/wip-doc-2022-09-25-dev-guide-basic-workflow-fork-note-formatting

doc/dev: improve presentation of note (git remote)

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2 years agodoc/dev: improve presentation of note (git remote) 48235/head
Zac Dover [Sun, 25 Sep 2022 03:41:35 +0000 (13:41 +1000)]
doc/dev: improve presentation of note (git remote)

This commit corrects the formatting of a note that previously
did not make console output and commands as clear as this commit
makes them.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
2 years agoMerge pull request #47767 from batrick/i57249
Venky Shankar [Fri, 23 Sep 2022 10:30:25 +0000 (16:00 +0530)]
Merge pull request #47767 from batrick/i57249

mds: correct storage of multiple damaged dentries in DamageTable

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
2 years agoMerge pull request #48148 from ktdreyer/win-remove-curl
Lucian Petrut [Fri, 23 Sep 2022 07:43:44 +0000 (10:43 +0300)]
Merge pull request #48148 from ktdreyer/win-remove-curl

win32: remove libcurl

2 years agoMerge pull request #47080 from dparmar18/wip-dparmar-MDS-56522
Venky Shankar [Fri, 23 Sep 2022 07:15:40 +0000 (12:45 +0530)]
Merge pull request #47080 from dparmar18/wip-dparmar-MDS-56522

mds/Server: Do not abort MDS on unknown messages

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2 years agocrimson: create buffer from temporary_buffer with foreign-ptr by default 48217/head
Yingxin Cheng [Fri, 23 Sep 2022 05:59:01 +0000 (13:59 +0800)]
crimson: create buffer from temporary_buffer with foreign-ptr by default

temporary_buffer is internally shareable with a thread-unsafe
ref-counter, we need to make sure it is released in the same core where
it is constructed.

Users that need the extra efficiency can swap to create_local as needed.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agoMerge pull request #47265 from s0nea/wip-dashboard-redirect-fqdn
Nizamudeen A [Fri, 23 Sep 2022 05:29:24 +0000 (10:59 +0530)]
Merge pull request #47265 from s0nea/wip-dashboard-redirect-fqdn

mgr/dashboard: add option to resolve ip addr

Reviewed-by: Pegonzal <NOT@FOUND>
Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2 years agoMerge pull request #48198 from mgfritch/cephadm-pytest-patch-logger
Adam King [Thu, 22 Sep 2022 14:43:44 +0000 (10:43 -0400)]
Merge pull request #48198 from mgfritch/cephadm-pytest-patch-logger

cephadm: patch the cephadm.logger class

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
2 years agoMerge pull request #48095 from ivancich/wip-unify-logic
Ali Maredia [Thu, 22 Sep 2022 14:03:45 +0000 (10:03 -0400)]
Merge pull request #48095 from ivancich/wip-unify-logic

rgw: fix bool/int logic error when calling get_obj_head_ioctx

2 years agoMerge pull request #47756 from dparmar18/wip-dparmar-cephadm-after-revert
Adam King [Thu, 22 Sep 2022 13:54:06 +0000 (09:54 -0400)]
Merge pull request #47756 from dparmar18/wip-dparmar-cephadm-after-revert

pybind/mgr/cephadm/upgrade: allow upgrades without reducing max_mds

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2 years agoMerge pull request #48118 from s0nea/container-version-fix
Adam King [Thu, 22 Sep 2022 13:50:31 +0000 (09:50 -0400)]
Merge pull request #48118 from s0nea/container-version-fix

cephadm: consider stdout to get container version

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Michael Fritch <mfritch@suse.com>
2 years agoMerge pull request #48120 from mgfritch/cephadm-haproxy-nonlocal-bind
Adam King [Thu, 22 Sep 2022 13:47:29 +0000 (09:47 -0400)]
Merge pull request #48120 from mgfritch/cephadm-haproxy-nonlocal-bind

cephadm: add `ip_nonlocal_bind` to haproxy deployment

Reviewed-by: Adam King <adking@redhat.com>
2 years agoMerge pull request #48184 from SUSE/wip-fix-57609
Adam King [Thu, 22 Sep 2022 13:46:11 +0000 (09:46 -0400)]
Merge pull request #48184 from SUSE/wip-fix-57609

python-common: Add 'KB' to supported suffixes in SizeMatcher

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
2 years agoMerge pull request #48200 from guits/fix-57627
Guillaume Abrioux [Thu, 22 Sep 2022 13:28:35 +0000 (15:28 +0200)]
Merge pull request #48200 from guits/fix-57627

ceph-volume: fix regression in activate

2 years agoMerge pull request #48185 from zhscn/wip-dtype
Yingxin [Thu, 22 Sep 2022 07:03:12 +0000 (15:03 +0800)]
Merge pull request #48185 from zhscn/wip-dtype

crimson/os/seastore: introduce backend_type_t

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore: make device according to device type 48185/head
Zhang Song [Tue, 20 Sep 2022 06:09:57 +0000 (14:09 +0800)]
crimson/os/seastore: make device according to device type

Signed-off-by: Zhang Song <zhangsong325@gmail.com>
2 years agocrimson/os/seastore: introduce get_backend_type to Device
Zhang Song [Mon, 19 Sep 2022 08:33:10 +0000 (16:33 +0800)]
crimson/os/seastore: introduce get_backend_type to Device

Signed-off-by: Zhang Song <zhangsong325@gmail.com>
2 years agocrimson/os/seastore: make can_delay_allocation always return true
Zhang Song [Thu, 22 Sep 2022 05:42:30 +0000 (13:42 +0800)]
crimson/os/seastore: make can_delay_allocation always return true

Signed-off-by: Zhang Song <zhangsong325@gmail.com>
2 years agocrimson/os/seastore: rename about device_type_t and journal_type_t
Zhang Song [Mon, 19 Sep 2022 08:09:48 +0000 (16:09 +0800)]
crimson/os/seastore: rename about device_type_t and journal_type_t

Signed-off-by: Zhang Song <zhangsong325@gmail.com>
2 years agocrimson/os/seastore: introduce backend_type_t
Zhang Song [Mon, 19 Sep 2022 07:43:53 +0000 (15:43 +0800)]
crimson/os/seastore: introduce backend_type_t

Signed-off-by: Zhang Song <zhangsong325@gmail.com>
2 years agoMerge pull request #48012 from Huber-ming/slave_requestPayment
J. Eric Ivancich [Thu, 22 Sep 2022 01:28:33 +0000 (21:28 -0400)]
Merge pull request #48012 from Huber-ming/slave_requestPayment

rgw: set requestPayment in slave zone

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2 years agoMerge pull request #48021 from soumyakoduri/wip-multisite-crash
J. Eric Ivancich [Wed, 21 Sep 2022 22:37:30 +0000 (18:37 -0400)]
Merge pull request #48021 from soumyakoduri/wip-multisite-crash

rgw: Drain async_processor request queue during shutdown

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
2 years agoceph-volume: fix regression in activate 48200/head
Guillaume Abrioux [Wed, 21 Sep 2022 20:25:04 +0000 (22:25 +0200)]
ceph-volume: fix regression in activate

bea9f4b643c introduced a regression that makes the activate process
take a very long time to complete.
`_get_bluestore_info()` which calls `ceph-bluestore-tool` binary via
subprocess is called in an exponential way while this is not needed.

Fixes: https://tracker.ceph.com/issues/57627
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
2 years agocephadm: add test cases for container engine classes 48197/head
John Mulligan [Tue, 20 Sep 2022 19:53:08 +0000 (15:53 -0400)]
cephadm: add test cases for container engine classes

Fixes: https://tracker.ceph.com/issues/57621
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2 years agocephadm: denote any mocked params as internal 48198/head
Michael Fritch [Tue, 20 Sep 2022 23:29:07 +0000 (17:29 -0600)]
cephadm: denote any mocked params as internal

prefix the mock patch params with a `_` char for consistancy with other
tests cases within the suite

Fixes: Fixes: https://tracker.ceph.com/issues/57621
Signed-off-by: Michael Fritch <mfritch@suse.com>
2 years agocephadm: patch the `cephadm.logger` class
Michael Fritch [Tue, 20 Sep 2022 22:20:15 +0000 (16:20 -0600)]
cephadm: patch the `cephadm.logger` class

Patch the logger class instead of globally mocking the class from within
the loaded source file. This was inadvertently allowing for the entire
test run to succeed, while a single run of a test case would fail due to
the missing mock.

For example:
    `tox -e py3 tests/test_cephadm.py::TestShell::test_fsid`

Fixes: Fixes: https://tracker.ceph.com/issues/57621
Signed-off-by: Michael Fritch <mfritch@suse.com>
2 years agoMerge pull request #47766 from cbodley/wip-qa-rgw-tempest-meta
Casey Bodley [Wed, 21 Sep 2022 16:45:32 +0000 (12:45 -0400)]
Merge pull request #47766 from cbodley/wip-qa-rgw-tempest-meta

qa/rgw/tempest: blocklist failing tests for removal of container metadata

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
2 years agoMerge pull request #48193 from rhcs-dashboard/fix-stoi
Avan [Wed, 21 Sep 2022 16:19:18 +0000 (21:49 +0530)]
Merge pull request #48193 from rhcs-dashboard/fix-stoi

exporter: avoid stoi for empty pid_str

Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
2 years agoMerge pull request #47900 from Matan-B/wip-matanb-librados-20
Laura Flores [Wed, 21 Sep 2022 15:06:12 +0000 (10:06 -0500)]
Merge pull request #47900 from Matan-B/wip-matanb-librados-20

examples/librados: Compile with c++20 on Ubuntu

2 years agocephadm: add `ip_nonlocal_bind` to haproxy deployment 48120/head
Michael Fritch [Thu, 15 Sep 2022 04:22:04 +0000 (22:22 -0600)]
cephadm: add `ip_nonlocal_bind` to haproxy deployment

standalone haproxy deployments require the
`net.ipv4.ip_nonlocal_bind` sysctl setting

Fixes: https://tracker.ceph.com/issues/57563
Signed-off-by: Michael Fritch <mfritch@suse.com>
2 years agoMerge pull request #48191 from phlogistonjohn/jjm-cephadm-tox-coverage
Adam King [Wed, 21 Sep 2022 12:41:55 +0000 (08:41 -0400)]
Merge pull request #48191 from phlogistonjohn/jjm-cephadm-tox-coverage

cephadm: add a tox env for generating a coverage report

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Michael Fritch <mfritch@suse.com>
Reviewed-by: Redouane Kachach <rkachach@redhat.com>
2 years agoMerge pull request #47494 from rhcs-dashboard/pgs-repaired
Pedro Gonzalez Gomez [Wed, 21 Sep 2022 12:10:13 +0000 (14:10 +0200)]
Merge pull request #47494 from rhcs-dashboard/pgs-repaired

mgr/prometheus: expose repaired pgs metrics

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2 years agoMerge pull request #48190 from ronen-fr/wip-rf-replica-init
Ronen Friedman [Wed, 21 Sep 2022 10:38:39 +0000 (13:38 +0300)]
Merge pull request #48190 from ronen-fr/wip-rf-replica-init

osd/scrub: make on_replica_init() idempotent again

Reviewed-by: Aishwarya Mathuria <amathuri@redhat.com>
2 years agoexporter: avoid stoi for empty pid_str 48193/head
Avan Thakkar [Tue, 20 Sep 2022 20:30:31 +0000 (02:00 +0530)]
exporter: avoid stoi for empty pid_str

Fixes: https://tracker.ceph.com/issues/57619
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
2 years agoMerge pull request #48121 from rzarzynski/wip-crimson-pgadvmap-critical-from
Samuel Just [Tue, 20 Sep 2022 22:00:45 +0000 (15:00 -0700)]
Merge pull request #48121 from rzarzynski/wip-crimson-pgadvmap-critical-from

crimson/osd: initialize PGAdvanceMap::from inside critical section

Reviewed-by: Samuel Just <sjust@redhat.com>
2 years agocephadm: add a tox env for generating a coverage report 48191/head
John Mulligan [Mon, 19 Sep 2022 19:11:27 +0000 (15:11 -0400)]
cephadm: add a tox env for generating a coverage report

This "dormant" target is here for developers to run locally and generate
a HTML coverage report to review.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2 years agoMerge pull request #48131 from adamemerson/wip-no-fno-new-ttp-matching
Casey Bodley [Tue, 20 Sep 2022 15:23:17 +0000 (11:23 -0400)]
Merge pull request #48131 from adamemerson/wip-no-fno-new-ttp-matching

build: Remove -fno-new-ttp-matchingg flag

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
2 years agoosd/scrub: make on_replica_init() idempotent again 48190/head
Ronen Friedman [Tue, 20 Sep 2022 07:02:51 +0000 (07:02 +0000)]
osd/scrub: make on_replica_init() idempotent again

on_replica_init() might be called twice during replica scrub
initiation. Thus, it was designed to cause no issue if called
an extra time. That was broken when the scrubber-backend code
was introduced.

Fixes: https://tracker.ceph.com/issues/57616
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2 years agoMerge pull request #48172 from mchangir/doc-add-note-about-cephfs-mirroring-paths v18.0.0
Venky Shankar [Tue, 20 Sep 2022 11:53:38 +0000 (17:23 +0530)]
Merge pull request #48172 from mchangir/doc-add-note-about-cephfs-mirroring-paths

doc/cephfs: add note about cephfs-mirroring paths

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agodoc/cephfs: add note about cephfs-mirroring paths 48172/head
Milind Changire [Tue, 20 Sep 2022 08:17:08 +0000 (13:47 +0530)]
doc/cephfs: add note about cephfs-mirroring paths

Signed-off-by: Milind Changire <mchangir@redhat.com>
2 years agocephadm: consider stdout to get container version 48118/head
Tatjana Dehler [Wed, 14 Sep 2022 14:36:16 +0000 (16:36 +0200)]
cephadm: consider stdout to get container version

Fixes: https://tracker.ceph.com/issues/57558
Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2 years agopython-common: Add 'KB' to supported suffixes in SizeMatcher 48184/head
Tim Serong [Tue, 20 Sep 2022 05:42:51 +0000 (15:42 +1000)]
python-common: Add 'KB' to supported suffixes in SizeMatcher

Fixes: https://tracker.ceph.com/issues/57609
Signed-off-by: Tim Serong <tserong@suse.com>
2 years agoMerge pull request #48149 from batrick/i57586
Venky Shankar [Tue, 20 Sep 2022 04:06:38 +0000 (09:36 +0530)]
Merge pull request #48149 from batrick/i57586

tools: allow spaces in dentries for first-damage.sh

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #48057 from athanatos/sjust/wip-io-hang
Samuel Just [Tue, 20 Sep 2022 00:52:36 +0000 (17:52 -0700)]
Merge pull request #48057 from athanatos/sjust/wip-io-hang

crimson/osd/client_request: use fresh tracking_events/handle instances on requeue

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2 years agocrimson/osd/client_request: use fresh tracking_events/handle instances on requeue 48057/head
Samuel Just [Mon, 12 Sep 2022 19:17:16 +0000 (19:17 +0000)]
crimson/osd/client_request: use fresh tracking_events/handle instances on requeue

See instance_handle_t explanation in client_request.h

Fixes: https://tracker.ceph.com/issues/57494
Fixes: https://tracker.ceph.com/issues/57495
Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoMerge pull request #48059 from athanatos/sjust/wip-57506
Samuel Just [Mon, 19 Sep 2022 20:40:41 +0000 (13:40 -0700)]
Merge pull request #48059 from athanatos/sjust/wip-57506

crimson: fix for pgs stuck in +wait along with some debug improvements

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2 years agoMerge pull request #48091 from rzarzynski/wip-crimson-pgadvmap-complete-in-order
Samuel Just [Mon, 19 Sep 2022 20:30:52 +0000 (13:30 -0700)]
Merge pull request #48091 from rzarzynski/wip-crimson-pgadvmap-complete-in-order

crimson/osd: PGAdvanceMap ops complete in order

Reviewed-by: Samuel Just <sjust@redhat.com>
2 years agoMerge pull request #48134 from rhcs-dashboard/silence-fix
Nizamudeen A [Mon, 19 Sep 2022 19:23:55 +0000 (00:53 +0530)]
Merge pull request #48134 from rhcs-dashboard/silence-fix

mgr/dashboard: use service call instead of form component

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2 years agotools: allow spaces in dentries for first-damage.sh 48149/head
Patrick Donnelly [Fri, 16 Sep 2022 19:00:38 +0000 (15:00 -0400)]
tools: allow spaces in dentries for first-damage.sh

Fixes: https://tracker.ceph.com/issues/57586
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2 years agoqa: test first damage with dentry containing spaces
Patrick Donnelly [Fri, 16 Sep 2022 19:02:11 +0000 (15:02 -0400)]
qa: test first damage with dentry containing spaces

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2 years agoMerge pull request #45369 from jyha200/wip-samplededup
Samuel Just [Mon, 19 Sep 2022 17:32:19 +0000 (10:32 -0700)]
Merge pull request #45369 from jyha200/wip-samplededup

ceph_dedup_tool: adding sample-dedup

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Myoungwon Oh <myoungwon.oh@samsung.com>
2 years agomgr/prometheus: expose num objects repaired in pool 47494/head
Pere Diaz Bou [Mon, 8 Aug 2022 10:51:16 +0000 (12:51 +0200)]
mgr/prometheus: expose num objects repaired in pool

Signed-off-by: Pere Diaz Bou <pdiazbou@redhat.com>
2 years agoMerge pull request #41855 from p-se/compile-cephadm-1
Adam King [Mon, 19 Sep 2022 15:48:51 +0000 (11:48 -0400)]
Merge pull request #41855 from p-se/compile-cephadm-1

cephadm: compile cephadm

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
2 years agoMerge pull request #47873 from pdvian/wip-log-last
Yuri Weinstein [Mon, 19 Sep 2022 15:36:45 +0000 (08:36 -0700)]
Merge pull request #47873 from pdvian/wip-log-last

mon/LogMonitor: Fix log last

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2 years agoMerge pull request #47852 from Matan-B/wip-matanb-radosmodel
Yuri Weinstein [Mon, 19 Sep 2022 15:36:15 +0000 (08:36 -0700)]
Merge pull request #47852 from Matan-B/wip-matanb-radosmodel

test/osd/RadosModel: Improve error debugging

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
2 years agoMerge pull request #47841 from Matan-B/wip-matanb-rados-striper
Yuri Weinstein [Mon, 19 Sep 2022 15:35:31 +0000 (08:35 -0700)]
Merge pull request #47841 from Matan-B/wip-matanb-rados-striper

SimpleRADOSStriper: Avoid moving bufferlists by using deque in read()

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
2 years agoMerge pull request #47774 from vumrao/wip-vumrao-57271
Yuri Weinstein [Mon, 19 Sep 2022 15:33:54 +0000 (08:33 -0700)]
Merge pull request #47774 from vumrao/wip-vumrao-57271

blk/KernelDevice: Modify the rotational and discard check log message

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
2 years agoMerge pull request #48156 from cbodley/wip-rgw-unused-throttles
Casey Bodley [Mon, 19 Sep 2022 15:31:25 +0000 (11:31 -0400)]
Merge pull request #48156 from cbodley/wip-rgw-unused-throttles

rgw: remove unused AioThrottles in rgw_op.cc

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
2 years agoMerge pull request #46321 from jmolmo/issue_55605
Adam King [Mon, 19 Sep 2022 15:04:58 +0000 (11:04 -0400)]
Merge pull request #46321 from jmolmo/issue_55605

mgr/rook: fix error when trying to get the list of nfs services

Reviewed-by: John Mulligan <jmulligan@redhat.com>
2 years agoMerge pull request #46961 from tcoldrick-bb/balancer-weekday
Yuri Weinstein [Mon, 19 Sep 2022 14:15:29 +0000 (07:15 -0700)]
Merge pull request #46961 from tcoldrick-bb/balancer-weekday

mgr/balancer: Disallow 7 as {begin,end}_weekday and 2400 as {begin,end}_time

Reviewed-by: Laura Flores <lflores@redhat.com>
2 years agoMerge pull request #46091 from pdvian/wip-bluestore-error
Yuri Weinstein [Mon, 19 Sep 2022 14:15:01 +0000 (07:15 -0700)]
Merge pull request #46091 from pdvian/wip-bluestore-error

os/bluestore: Log error to stderr if fail to decode label

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
2 years agoMerge pull request #43791 from rzarzynski/wip-net-perfctrs-for-encrypted-traffic
Yuri Weinstein [Mon, 19 Sep 2022 14:14:02 +0000 (07:14 -0700)]
Merge pull request #43791 from rzarzynski/wip-net-perfctrs-for-encrypted-traffic

auth, msg/async: add perf counters for encrypted traffic

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
2 years agoexamples: Compile with c++20 47900/head
Matan Breizman [Wed, 31 Aug 2022 18:02:18 +0000 (18:02 +0000)]
examples: Compile with c++20

This change will apply to ubuntu only.
Fixes: https://tracker.ceph.com/issues/57163
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
2 years agoMerge pull request #48166 from rhcs-dashboard/fix-empty-pid-path-case
Avan [Mon, 19 Sep 2022 13:17:15 +0000 (18:47 +0530)]
Merge pull request #48166 from rhcs-dashboard/fix-empty-pid-path-case

exporter: don't skip loop if pid path is empty

Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
2 years agoexporter: don't skip loop if pid path is empty 48166/head
Avan Thakkar [Mon, 19 Sep 2022 10:30:20 +0000 (16:00 +0530)]
exporter: don't skip loop if pid path is empty

Signed-off-by: Avan Thakkar <athakkar@redhat.com>
Fixes issue when pid file config comes empty from config dump which prevents to add metrics. Also get process metrics only if
pid_path isn't empty.

2 years agoMerge pull request #47986 from lmgdlmgd/patch-3
Igor Fedotov [Mon, 19 Sep 2022 08:54:30 +0000 (11:54 +0300)]
Merge pull request #47986 from lmgdlmgd/patch-3

osd: set per_pool_stats true when OSD has no PG

Reviewed-by: Igor Fedotov <ifedotov@croit.io>
2 years agoMerge pull request #48139 from ktdreyer/win-simplify-openssl
Lucian Petrut [Mon, 19 Sep 2022 07:59:33 +0000 (10:59 +0300)]
Merge pull request #48139 from ktdreyer/win-simplify-openssl

win32: skip installing openssl man pages

2 years agomgr/dashboard: use service call instead of form component 48134/head
Nizamudeen A [Fri, 16 Sep 2022 07:20:26 +0000 (12:50 +0530)]
mgr/dashboard: use service call instead of form component

For creating the silence from the notification sidebar, instead of using
the silence form which will require initializing the whole component on
the landing page, we can just call the prometheus service and pass on
the required data to the service call. This will fix showing the
`Prometheus not configured` error everytime we visit the landing page when
the prometheus is not configured

Fixes: https://tracker.ceph.com/issues/57576
Signed-off-by: Nizamudeen A <nia@redhat.com>
2 years agoceph_dedup_tool: fix threshold comparison 45369/head
myoungwon oh [Sat, 17 Sep 2022 07:11:49 +0000 (16:11 +0900)]
ceph_dedup_tool: fix threshold comparison

If threadhold count is 2, existing code always returns true
even though reference count is 1 actually  because it additionally
adds one via ++.

Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
2 years agoceph_dedup_tool: make SampleDedupWorkerThread::chunk_size const
Samuel Just [Sat, 17 Sep 2022 03:15:39 +0000 (20:15 -0700)]
ceph_dedup_tool: make SampleDedupWorkerThread::chunk_size const

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: remove unused SampleDedupWorkerThread::duplicable_chunks
Samuel Just [Sat, 17 Sep 2022 03:15:15 +0000 (20:15 -0700)]
ceph_dedup_tool: remove unused SampleDedupWorkerThread::duplicable_chunks

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: minor code simplifications
Samuel Just [Sat, 17 Sep 2022 03:00:24 +0000 (03:00 +0000)]
ceph_dedup_tool: minor code simplifications

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: remove unimplemented mark_non_dedup method signature
Samuel Just [Sat, 17 Sep 2022 03:11:53 +0000 (20:11 -0700)]
ceph_dedup_tool: remove unimplemented mark_non_dedup method signature

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: fix log lines to use std::endl, update object skip message
Samuel Just [Sat, 17 Sep 2022 03:08:54 +0000 (20:08 -0700)]
ceph_dedup_tool: fix log lines to use std::endl, update object skip message

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: remove unused SampleDedupWorkerThread::do_object_dedup
Samuel Just [Sat, 17 Sep 2022 03:08:09 +0000 (20:08 -0700)]
ceph_dedup_tool: remove unused SampleDedupWorkerThread::do_object_dedup

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: make SampleDedupGlobal::sampling_rate const
Samuel Just [Sat, 17 Sep 2022 02:57:07 +0000 (02:57 +0000)]
ceph_dedup_tool: make SampleDedupGlobal::sampling_rate const

Clarifies why it doesn't need to be protected by a lock.

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: remove unused SampleDedupGlobal::object_dedup_threshold
Samuel Just [Sat, 17 Sep 2022 02:56:21 +0000 (02:56 +0000)]
ceph_dedup_tool: remove unused SampleDedupGlobal::object_dedup_threshold

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: fix unnecessarily complicated bool returns
Samuel Just [Sat, 17 Sep 2022 02:47:23 +0000 (02:47 +0000)]
ceph_dedup_tool: fix unnecessarily complicated bool returns

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoceph_dedup_tool: SampleDedupWorkerThread can simply inherit from Thread
Samuel Just [Sat, 17 Sep 2022 02:42:49 +0000 (02:42 +0000)]
ceph_dedup_tool: SampleDedupWorkerThread can simply inherit from Thread

SampleDedupWorkerThread didn't actually use any of the facilities on
CrawlerThread and indeed left several of them uninitialized.

Also allows us to remove the CrawlerThread constructor which left
several members uninitialized.

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoqa: remove unused values in deduplication.py
myoungwon oh [Sat, 17 Sep 2022 02:22:56 +0000 (11:22 +0900)]
qa: remove unused values in deduplication.py

Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
2 years agoqa: add validation stage for deduplication.py
Sungmin Lee [Tue, 23 Aug 2022 04:51:31 +0000 (13:51 +0900)]
qa: add validation stage for deduplication.py

To validate sample-dedup actually works, validate() runs
separated thread from sample-dedup and verifies
two following things.
1. check sample-dedup starts properly.
2. check references of all the chunk objects' in chunk tier
   exists in designated base pool.
This routune repeats for max_valication_cnt times while
sample-dedup is running. If it doesn't raise any fail while the loop,
we can pretend sample-dedup works accurately.
If not, assert() will stop this test.

In case that a reference of chunk object doesn't exist in base pool,
validate() gives a second chance after repairing it (chunk-repair op)
to deal with false-positive reference inconsistency.

Signed-off-by: Sungmin Lee <sung_min.lee@samsung.com>
2 years agosrc/tools/ceph_dedup_tool: fixes to daemonize the process correctly
myoungwon oh [Thu, 25 Aug 2022 05:51:36 +0000 (14:51 +0900)]
src/tools/ceph_dedup_tool: fixes to daemonize the process correctly

Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
2 years agoqa: add deduplication test under RGW workload (s3)
myoungwon oh [Wed, 11 May 2022 12:21:05 +0000 (21:21 +0900)]
qa: add deduplication test under RGW workload (s3)

Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
2 years agoMerge pull request #48157 from zdover23/wip-doc-2022-09-18-rados-network-config-promp...
zdover23 [Sat, 17 Sep 2022 22:11:48 +0000 (08:11 +1000)]
Merge pull request #48157 from zdover23/wip-doc-2022-09-18-rados-network-config-prompt-correction

doc/rados: update prompts in network-config-ref

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2 years agodoc/rados: update prompts in network-config-ref 48157/head
Zac Dover [Sat, 17 Sep 2022 20:59:47 +0000 (06:59 +1000)]
doc/rados: update prompts in network-config-ref

This PR adds unselectable prompts to network-config-
ref.rst.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
2 years agorgw: remove unused AioThrottles in rgw_op.cc 48156/head
Casey Bodley [Sat, 17 Sep 2022 15:42:09 +0000 (11:42 -0400)]
rgw: remove unused AioThrottles in rgw_op.cc

throttle creation was moved to RadosStore::get_atomic_writer(),
RadosStore::get_append_writer(), and RadosMultipartUpload::get_writer()

these instances in rgw_op.cc were unused

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2 years agoqa: turn fail_fs off in case default changes 47756/head
Patrick Donnelly [Fri, 16 Sep 2022 14:32:58 +0000 (10:32 -0400)]
qa: turn fail_fs off in case default changes

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2 years agowin32: remove libcurl 48148/head
Ken Dreyer [Fri, 9 Sep 2022 18:44:45 +0000 (18:44 +0000)]
win32: remove libcurl

The Windows client does not use libcurl for anything. Remove it to
simplify the build process.

Note, if we ever add libcurl back on Windows, we should disable unused
protocols to harden the build:

  --disable-ftp --disable-ldap --disable-ldaps --disable-rtsp \
  --disable-dict --disable-telnet --disable-tftp --disable-pop3 \
  --disable-imap --disable-smb --disable-smtp --disable-gopher \
  --disable-mqtt --disable-manual --disable-ntlm

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2 years agoMerge pull request #47849 from torchiaf/fix/37327
Nizamudeen A [Fri, 16 Sep 2022 15:19:48 +0000 (20:49 +0530)]
Merge pull request #47849 from torchiaf/fix/37327

mgr/dashboard: Add details to the modal which displays the `safe-to-d…

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2 years agoMerge pull request #47958 from rhcs-dashboard/edit-host-labels-fix
Nizamudeen A [Fri, 16 Sep 2022 15:17:50 +0000 (20:47 +0530)]
Merge pull request #47958 from rhcs-dashboard/edit-host-labels-fix

mgr/dashboard: fix Expected to find element: `cd-modal .badge but never found it

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
2 years agowin32: skip installing openssl man pages 48139/head
Ken Dreyer [Fri, 9 Sep 2022 17:38:29 +0000 (17:38 +0000)]
win32: skip installing openssl man pages

This speeds up the build a bit and makes the logs easier to read.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2 years agoMerge pull request #45148 from guits/revert-ceph-crash-changes
Adam King [Fri, 16 Sep 2022 14:27:10 +0000 (10:27 -0400)]
Merge pull request #45148 from guits/revert-ceph-crash-changes

Revert "src/ceph-crash.in: remove unused frame in handler()"

Reviewed-by: Teoman ONAY <tonay@redhat.com>
2 years agoMerge pull request #47965 from cbodley/wip-rgw-drain-cb-capture-error
Casey Bodley [Fri, 16 Sep 2022 14:02:14 +0000 (10:02 -0400)]
Merge pull request #47965 from cbodley/wip-rgw-drain-cb-capture-error

Revert "rgw: add coroutine drain callback capture_error()"

Reviewed-by: Soumya Koduri <skoduri@redhat.com>
Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
2 years agomgr/dashboard: Add details to the modal which displays the `safe-to-destroy` result 47849/head
Francesco Torchia [Fri, 26 Aug 2022 15:39:43 +0000 (17:39 +0200)]
mgr/dashboard: Add details to the modal which displays the `safe-to-destroy` result

- Add warnings type information in the case of the OSDs are not safe to destroy
- Add info type information in the case of the OSDs are safe to destroy

Fixes: https://tracker.ceph.com/issues/37327
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2 years agoMerge pull request #47878 from xxhdx1985126/wip-pin_set-cpu
Yingxin [Fri, 16 Sep 2022 01:41:20 +0000 (09:41 +0800)]
Merge pull request #47878 from xxhdx1985126/wip-pin_set-cpu

crimson/os/seastore/btree: reduce the avg number of queries of pin sets' parent/child lookup

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agobuild: Remove -fno-new-ttp-matchingg flag 48131/head
Adam C. Emerson [Fri, 16 Sep 2022 00:05:57 +0000 (20:05 -0400)]
build: Remove -fno-new-ttp-matchingg flag

This was added in the upgrade to C++17. It's no longer needed since
fixing Clang compatibility got rid of non-conforming templates.

It's no longer needed and getting rid of it is a (minor) quality of
life enhancement since it gets rid of a spurious error when using
Clang based build tools (language server, etc.) while compiling with
GCC.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>