]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 years agopybind/ceph_volume_client: use cephfs mkdirs api 42161/head
Patrick Donnelly [Fri, 2 Jul 2021 16:07:34 +0000 (09:07 -0700)]
pybind/ceph_volume_client: use cephfs mkdirs api

This _mkdir_p should never have worked as the first directory it tries
to stat/mkdir is "", the empty string. This causes an assertion in the
client. I'm not sure how this code ever functioned without causing
faults. They look like:

    2021-07-01 02:15:04.449 7f7612b5ab80  3 client.178735 statx enter (relpath  want 2047)

The assertion is caused by a C++ exception:

/usr/include/c++/8/string_view:172: constexpr const _CharT& std::basic_string_view<_CharT, _Traits>::operator[](std::basic_string_view<_CharT, _Traits>::size_type) const [with _CharT = char$_Traits = std::char_traits<char>; std::basic_string_view<_CharT, _Traits>::size_type = long unsigned int]: Assertion '__pos < this->_M_len' failed.
        Aborted (core dumped)

Where relpath is just the path passed to Client::stat.

This commit only applies to Pacific and older because master no longer
has this library.

Fixes: https://tracker.ceph.com/issues/51492
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 0fb05aea8a6e12c37a9b54641715a9a94ae1366f)

4 years agoMerge pull request #42142 from rhcs-dashboard/wip-51474-octopus
Ernesto Puerta [Fri, 2 Jul 2021 09:15:22 +0000 (11:15 +0200)]
Merge pull request #42142 from rhcs-dashboard/wip-51474-octopus

octopus: mgr/dashboard: User database migration has been cut out

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
4 years agoMerge pull request #41584 from cfsnyder/wip-50895-octopus
Guillaume Abrioux [Fri, 2 Jul 2021 07:18:38 +0000 (09:18 +0200)]
Merge pull request #41584 from cfsnyder/wip-50895-octopus

octopus: ceph-volume: Consider /dev/root as mounted

4 years agoMerge pull request #41870 from cfsnyder/wip-51190-octopus
Yuri Weinstein [Thu, 1 Jul 2021 17:49:50 +0000 (10:49 -0700)]
Merge pull request #41870 from cfsnyder/wip-51190-octopus

octopus: mgr/telemetry: pass leaderboard flag even w/o ident

Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoMerge pull request #41617 from cfsnyder/wip-50167-octopus
Yuri Weinstein [Thu, 1 Jul 2021 17:47:30 +0000 (10:47 -0700)]
Merge pull request #41617 from cfsnyder/wip-50167-octopus

octopus: mgr: do not load disabled modules

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoMerge pull request #40948 from mgfritch/octopus-backport-39730-39822
Yuri Weinstein [Thu, 1 Jul 2021 17:46:42 +0000 (10:46 -0700)]
Merge pull request #40948 from mgfritch/octopus-backport-39730-39822

octopus: cephadm: fix escaping/quoting of stderr-prefix arg for ceph daemons

Reviewed-by: Adam King adking@redhat.com
4 years agomgr/dashboard: User database migration has been cut out 42142/head
Volker Theile [Wed, 30 Jun 2021 12:00:28 +0000 (14:00 +0200)]
mgr/dashboard: User database migration has been cut out

This PR will revert changes done by https://tracker.ceph.com/issues/49645 to auto-migrate user database v1 to v2.

Fixes: https://tracker.ceph.com/issues/51443
Signed-off-by: Volker Theile <vtheile@suse.com>
(cherry picked from commit 82922811612813840a684af993ca7c95a0b48d53)

4 years agoMerge pull request #41620 from cfsnyder/wip-50790-octopus
Yuri Weinstein [Wed, 30 Jun 2021 18:53:28 +0000 (11:53 -0700)]
Merge pull request #41620 from cfsnyder/wip-50790-octopus

octopus: osd: clear data digest when write_trunc

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoMerge pull request #41568 from ideepika/wip-tracker-48142-octopus
Yuri Weinstein [Tue, 29 Jun 2021 15:09:17 +0000 (08:09 -0700)]
Merge pull request #41568 from ideepika/wip-tracker-48142-octopus

octopus: qa/cephadm/upgrade: use v15.2.9 for cephadm tests

Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoMerge pull request #41622 from cfsnyder/wip-50987-octopus
Yuri Weinstein [Mon, 28 Jun 2021 19:29:44 +0000 (12:29 -0700)]
Merge pull request #41622 from cfsnyder/wip-50987-octopus

octopus: crush/crush: ensure alignof(crush_work_bucket) is 1

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoMerge pull request #41621 from cfsnyder/wip-50796-octopus
Yuri Weinstein [Mon, 28 Jun 2021 19:28:56 +0000 (12:28 -0700)]
Merge pull request #41621 from cfsnyder/wip-50796-octopus

octopus: mon: load stashed map before mkfs monmap

Reviewed-by: Neha Ojha <nojha@redhat.com>
4 years agoMerge pull request #41613 from cfsnyder/wip-50940-octopus
Yuri Weinstein [Mon, 28 Jun 2021 19:27:24 +0000 (12:27 -0700)]
Merge pull request #41613 from cfsnyder/wip-50940-octopus

octopus: os/bluestore: introduce multithireading sync for bluestore's repairer

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
4 years agoMerge pull request #41612 from cfsnyder/wip-50781-octopus
Yuri Weinstein [Mon, 28 Jun 2021 19:26:19 +0000 (12:26 -0700)]
Merge pull request #41612 from cfsnyder/wip-50781-octopus

octopus: os/bluestore: tolerate zero length for allocators' init_[add/rm]_free()

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
4 years agoMerge pull request #40820 from ivancich/wip-50302-octopus
Yuri Weinstein [Mon, 28 Jun 2021 19:19:51 +0000 (12:19 -0700)]
Merge pull request #40820 from ivancich/wip-50302-octopus

octopus: rgw: radoslist incomplete multipart parts marker

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #41878 from ideepika/wip-51242-octopus
Deepika Upadhyay [Mon, 28 Jun 2021 18:10:35 +0000 (23:40 +0530)]
Merge pull request #41878 from ideepika/wip-51242-octopus

octopus: debian/control: ceph-mgr-modules-core does not Recommend ceph-mgr-rook

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41922 from ideepika/wip-51269-octopus
Deepika Upadhyay [Mon, 28 Jun 2021 17:49:55 +0000 (23:19 +0530)]
Merge pull request #41922 from ideepika/wip-51269-octopus

octopus: qa/suites/rados/perf: pin to 18.04

4 years agoMerge pull request #41478 from ideepika/wip-remove-bionic
Yuri Weinstein [Mon, 28 Jun 2021 17:40:30 +0000 (10:40 -0700)]
Merge pull request #41478 from ideepika/wip-remove-bionic

octopus: qa/distros: move to latest version on supported distro's

Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
4 years agoqa/tasks/cephadm: include first mgr host when applying mgrs 41478/head
Josh Durgin [Wed, 23 Dec 2020 00:25:48 +0000 (19:25 -0500)]
qa/tasks/cephadm: include first mgr host when applying mgrs

This prevents the first mgr from being shut down due to lack of
appropriate placements.

trivial fix: removed octopus upgrade configs.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
(cherry picked from commit c79fa6d780580f99b62117e54326a4ef4b7adfef)

4 years agoqa/upgrade: replace ubuntu_latest to ubuntu_18.04
Deepika Upadhyay [Wed, 16 Jun 2021 20:42:12 +0000 (02:12 +0530)]
qa/upgrade: replace ubuntu_latest to ubuntu_18.04

since mimic and nautilus does not support focal builds, keep using
ubuntu_18.

octopus only, since master and pacific support focal

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoqa/distros/supported-random-distro$: keep support for bionic
Deepika Upadhyay [Wed, 26 May 2021 14:29:58 +0000 (19:59 +0530)]
qa/distros/supported-random-distro$: keep support for bionic

we still want to keep supporting 18.04 LTS for octopus, don't want to
use it for cephadm, since podman dropped support for bionic.

this is octopus only commit, since it's octopus specific support and we
dropped bionic in master.

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoMerge pull request #41618 from cfsnyder/wip-50990-octopus
Kefu Chai [Fri, 25 Jun 2021 06:47:59 +0000 (14:47 +0800)]
Merge pull request #41618 from cfsnyder/wip-50990-octopus

octopus: mon/OSDMonitor: drop stale failure_info even if can_mark_down()

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41619 from cfsnyder/wip-50383-octopus
Kefu Chai [Fri, 25 Jun 2021 06:46:52 +0000 (14:46 +0800)]
Merge pull request #41619 from cfsnyder/wip-50383-octopus

octopus: test: bump DecayCounter.steady acceptable error

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41764 from cfsnyder/wip-51093-octopus
Yuri Weinstein [Wed, 23 Jun 2021 18:17:30 +0000 (11:17 -0700)]
Merge pull request #41764 from cfsnyder/wip-51093-octopus

octopus: mgr/DaemonServer.cc: prevent mgr crashes caused by integer underflow that is triggered by large increases to pg_num/pgp_num

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoMerge pull request #41586 from cfsnyder/wip-50661-octopus
Yuri Weinstein [Wed, 23 Jun 2021 18:10:56 +0000 (11:10 -0700)]
Merge pull request #41586 from cfsnyder/wip-50661-octopus

octopus: ceph: ignore BrokenPipeError when printing help

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoMerge pull request #41658 from neha-ojha/wip-51041-octopus
Yuri Weinstein [Tue, 22 Jun 2021 17:22:34 +0000 (10:22 -0700)]
Merge pull request #41658 from neha-ojha/wip-51041-octopus

octopus:  os/bluestore: fix unexpected ENOSPC in Avl/Hybrid allocators.

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
4 years agoMerge pull request #41623 from cfsnyder/wip-50705-octopus
Yuri Weinstein [Tue, 22 Jun 2021 17:21:45 +0000 (10:21 -0700)]
Merge pull request #41623 from cfsnyder/wip-50705-octopus

octopus: osd/PG.cc: handle removal of pgmeta object

Reviewed-by: Neha Ojha <nojha@redhat.com>
4 years agoMerge pull request #41609 from dvanders/dvanders_40572_octopus
Yuri Weinstein [Tue, 22 Jun 2021 17:20:47 +0000 (10:20 -0700)]
Merge pull request #41609 from dvanders/dvanders_40572_octopus

octopus: osd/PeeringState: fix acting_set_writeable min_size check

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
4 years agoMerge pull request #41602 from p-se/backport-octopus-port-in-use
Yuri Weinstein [Tue, 22 Jun 2021 17:19:24 +0000 (10:19 -0700)]
Merge pull request #41602 from p-se/backport-octopus-port-in-use

octopus: cephadm: fix port_in_use when IPv6 is disabled

Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
4 years agoqa/workunits/cephadm/test_repos: adjust target version
Sage Weil [Sun, 24 Jan 2021 00:56:42 +0000 (18:56 -0600)]
qa/workunits/cephadm/test_repos: adjust target version

15.2.7 is available for 20.04; 15.1.1 is not

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 7fe3853af97120fc97406f5b8123bbaa4adc9c6e)

4 years agorados/cephadm/qa/distros: update to latest distros
Deepika Upadhyay [Wed, 26 May 2021 09:11:55 +0000 (14:41 +0530)]
rados/cephadm/qa/distros: update to latest distros

- removes ubuntu_18.04 support for podman, instead we move to focal.
- use rhel_8.3 for all rhel_8 references
- use {centos/rhel}_8 instead of {rhel/centos}_latest: to keep things
  same in master and octopus since we use: rhel_8 and centos_8 as latest
  version symlinks, which differentiated after an octopus only commit.

this was not cherry picked from master as octopus had some of the
symlinks, not in sync with master, this commit does cleanup for them,
and tries to make them similar to master.

(updates introduced change by: 126217febf023a6f561fe88dbdb87b5b2f379798)
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoqa/distros/podman: preserve registries.conf
Sage Weil [Mon, 5 Apr 2021 18:49:18 +0000 (13:49 -0500)]
qa/distros/podman: preserve registries.conf

Otherwise we'll lose the mirror configuration.

trivial-fix:

specify location for container registry since we use sepia labs as our
container registery, which otherwise can't find registries.conf

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 917a9c49e55ab107c1e5b1d035398344bcd33858)

4 years agoqa: new kubic distro files; use kubic podman for centos/rhel
Sage Weil [Wed, 3 Mar 2021 14:14:29 +0000 (08:14 -0600)]
qa: new kubic distro files; use kubic podman for centos/rhel

The current centos/rhel version of podman (2.2.1) is broken.

- create new qa/distros/podman/* files that install kubic podman
- include centos/rhel variants
- adjust cephadm jobs to use new yaml files
- remove old qa/distros/all/*_podman.yaml files

trivial fix: we do not have cephadm/thrash suite in octopus(removed)
- distro(from octopus) renamed to 0-distro(from pacific)

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 11beb7287084b56ac7cbd45ac3d28b3d9fa4cc5b)

4 years agoqa/suites/rados/cephadm: add back centos+rhel with kubic podman
Sage Weil [Thu, 11 Mar 2021 19:46:23 +0000 (13:46 -0600)]
qa/suites/rados/cephadm: add back centos+rhel with kubic podman

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit dbdd4d46e35d2fcf80a1b2cd9da77b6832c45aa3)

4 years agoqa/suites/rados/cephadm: add 20.04 target
Sage Weil [Sat, 23 Jan 2021 17:23:13 +0000 (11:23 -0600)]
qa/suites/rados/cephadm: add 20.04 target

Link directly to the distro version... no need to use _latest here since
it obscures the podman vs docker difference.

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 170dd14af4f72bdac2a43742d11fa194c84819f5)

4 years agoqa/tests: replaced ubuntu_latest.yaml with ubuntu 20.04
Kefu Chai [Mon, 29 Mar 2021 16:06:16 +0000 (00:06 +0800)]
qa/tests: replaced ubuntu_latest.yaml with ubuntu 20.04

resurrect 835f2f5f511e7363f4056e5137382982aac1bfbf, which was reverted by
1f885b6c2fdde1f3ab249a56f7b4b763556f4373

so all tests for `pacific` will be tested on the latest ubuntu version

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 55564dbd01e6020a40d9a18d080aa7b1b9f86d5e)

4 years agoqa/distros: add centos 8.3
Patrick Donnelly [Fri, 5 Mar 2021 21:11:30 +0000 (13:11 -0800)]
qa/distros: add centos 8.3

trivial fix: adding centos_8 symlink

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 74f04aa9e12bbe195506fe28d2a0d4e3d4ff200d)

4 years agoqa/distros: add ubuntu 20.04 targets
Sage Weil [Sat, 23 Jan 2021 17:20:52 +0000 (11:20 -0600)]
qa/distros: add ubuntu 20.04 targets

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 24c2d2b1244d95c232f927dad1417717a2768ece)

4 years agoqa/distros: add RHEL 8.3 and use RHEL 8.3 as default
rakeshgm [Tue, 17 Nov 2020 13:14:16 +0000 (18:44 +0530)]
qa/distros: add RHEL 8.3 and use RHEL 8.3 as default

Signed-off-by: rakeshgm <rakeshgm@redhat.com>
(cherry picked from commit 5eabe906e6d15dec48224fd29b45e1155e751314)

4 years agoqa/distros: centos7 -> centos8, rhel7 -> rhel8
Sage Weil [Tue, 10 Dec 2019 13:45:06 +0000 (07:45 -0600)]
qa/distros: centos7 -> centos8, rhel7 -> rhel8

trivial fix: removing skipping log warning needed for previous versions

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 1eb8198d0b25be38eae707fc79e8d13d2a3a9788)

4 years agoqa/suites/perf-basic: pin to 18.04 41922/head
Neha Ojha [Wed, 3 Feb 2021 18:57:50 +0000 (18:57 +0000)]
qa/suites/perf-basic: pin to 18.04

This will have same problems as https://tracker.ceph.com/issues/49139

trivial fix: removed ubuntu_latest having bionic as entry.

Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit e5895dd8012f646ae9d67b9d1b331e7c06fe89d3)

4 years agoqa/suites/rados/perf: pin to 18.04
Neha Ojha [Wed, 3 Feb 2021 17:29:59 +0000 (17:29 +0000)]
qa/suites/rados/perf: pin to 18.04

Caused by a07ca4c5c0f04c43c71231a898c2a89e99a80606

Fixes: https://tracker.ceph.com/issues/49139
Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit 6a03b4cec9be39b2c3217e5f28372e1db3999781)

4 years agoMerge pull request #41087 from smithfarm/wip-50357-octopus
Nathan Cutler [Wed, 16 Jun 2021 20:20:01 +0000 (22:20 +0200)]
Merge pull request #41087 from smithfarm/wip-50357-octopus

octopus: make-dist: refuse to run if script path contains a colon

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agodebian/control: ceph-mgr-modules-core does not Recommend ceph-mgr-rook anymore 41878/head
Kefu Chai [Fri, 4 Jun 2021 03:25:12 +0000 (11:25 +0800)]
debian/control: ceph-mgr-modules-core does not Recommend ceph-mgr-rook anymore

per https://www.debian.org/doc/debian-policy/ch-relationships.html

> Recommends
>   This declares a strong, but not absolute, dependency.
>
> The Recommends field should list packages that would be found together
> with this one in all but unusual installations.

ceph-mgr-modules-core provides a set of ceph-mgr modules which are
always enabeld. but the rook module enables ceph-mgr to install and
configure a Ceph cluster using Rook. this module is very useful but
it does not have such a strong connection with ceph-mgr-modules-core.
we can always install it separately for using better intergration with
Rook.

See-also: https://tracker.ceph.com/issues/45574
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 814fb28892370bef3337f90edccfd6f9c00bf350)

4 years agomgr/telemetry: pass leaderboard flag even w/o ident 41870/head
Sage Weil [Fri, 4 Jun 2021 17:49:40 +0000 (12:49 -0500)]
mgr/telemetry: pass leaderboard flag even w/o ident

Allow non-identified clusters to appear in the leaderboard.
The leaderboard option still defaults to false, so the change here
is that if they opt in to leaderboard but not ident we'll see
that on the backend.

Note that a leaderboard still does not exist (yet), so this doesn't
have any immediate impact.  But if/when we do create one, it will
allow us to show big clusters (that opt in) on the leaderboard
as 'unidentified' or similar.

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit d4a6c3d0099a1f005f41a2cbcfbdbfeddd468db6)

4 years agoqa/tasks/mgr: skip test_diskprediction_local on python>=3.8 41617/head
Kefu Chai [Wed, 7 Apr 2021 05:38:27 +0000 (13:38 +0800)]
qa/tasks/mgr: skip test_diskprediction_local on python>=3.8

query the python version before trying to test diskprediction_local

Fixes: https://tracker.ceph.com/issues/50196
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 39b2b5edc008900d531be95ece1ce75a1e036914)

Conflicts:
qa/tasks/mgr/test_module_selftest.py

4 years agomgr/selftest: add a command for querying python version
Kefu Chai [Wed, 7 Apr 2021 06:40:05 +0000 (14:40 +0800)]
mgr/selftest: add a command for querying python version

so the test driver can skip certain tests based on the version of python
runtime on the test node

Fixes: https://tracker.ceph.com/issues/50196
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 91bc0e54ab816fca12a08817c261bbbf65606726)

Conflicts:
src/pybind/mgr/selftest/module.py

4 years agoMerge pull request #41624 from cfsnyder/wip-50750-octopus
Yuri Weinstein [Tue, 15 Jun 2021 16:12:12 +0000 (09:12 -0700)]
Merge pull request #41624 from cfsnyder/wip-50750-octopus

octopus: doc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/

Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
4 years agoMerge pull request #41766 from cfsnyder/wip-50727-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:57:57 +0000 (07:57 -0700)]
Merge pull request #41766 from cfsnyder/wip-50727-octopus

octopus: rgw : add check empty for sync url

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41765 from cfsnyder/wip-51079-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:57:31 +0000 (07:57 -0700)]
Merge pull request #41765 from cfsnyder/wip-51079-octopus

octopus: rgw: require bucket name in bucket chown

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41420 from cfsnyder/wip-50677-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:57:05 +0000 (07:57 -0700)]
Merge pull request #41420 from cfsnyder/wip-50677-octopus

octopus: rgw: fix segfault related to explicit object manifest handling

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41419 from cfsnyder/wip-50423-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:56:15 +0000 (07:56 -0700)]
Merge pull request #41419 from cfsnyder/wip-50423-octopus

octopus: rgw: send headers of quota settings

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41418 from cfsnyder/wip-50380-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:55:38 +0000 (07:55 -0700)]
Merge pull request #41418 from cfsnyder/wip-50380-octopus

octopus: rgw/amqp/test: fix mock prototype for librabbitmq-0.11.0

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41417 from cfsnyder/wip-50643-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:55:06 +0000 (07:55 -0700)]
Merge pull request #41417 from cfsnyder/wip-50643-octopus

octopus: rgw: allow rgw-orphan-list to process multiple data pools

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41416 from cfsnyder/wip-50730-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:54:37 +0000 (07:54 -0700)]
Merge pull request #41416 from cfsnyder/wip-50730-octopus

octopus: rgw/rgw_file: Fix the return value of read() and readlink()

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41415 from cfsnyder/wip-50640-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:54:08 +0000 (07:54 -0700)]
Merge pull request #41415 from cfsnyder/wip-50640-octopus

octopus: rgw/sts: read_obj_policy() consults iam_user_policies on ENOENT

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41413 from cfsnyder/wip-50709-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:53:39 +0000 (07:53 -0700)]
Merge pull request #41413 from cfsnyder/wip-50709-octopus

octopus: rgw: fix bucket object listing when marker matches prefix

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41412 from cfsnyder/wip-50464-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:52:56 +0000 (07:52 -0700)]
Merge pull request #41412 from cfsnyder/wip-50464-octopus

octopus: rgw/notifications: delete bucket notification object when empty

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #40768 from smithfarm/wip-49513-octopus
Yuri Weinstein [Tue, 15 Jun 2021 14:46:06 +0000 (07:46 -0700)]
Merge pull request #40768 from smithfarm/wip-49513-octopus

octopus: cephfs: client: add ability to lookup snapped inodes by inode number

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
4 years agoMerge pull request #41647 from rhcs-dashboard/wip-51065-octopus
Ernesto Puerta [Mon, 14 Jun 2021 08:29:50 +0000 (10:29 +0200)]
Merge pull request #41647 from rhcs-dashboard/wip-51065-octopus

octopus: mgr/dashboard: fix bucket objects and size calculations

Reviewed-by: Waad Alkhoury <walkhour@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
4 years agoMerge pull request #41530 from rhcs-dashboard/wip-50884-octopus
Ernesto Puerta [Fri, 11 Jun 2021 18:01:02 +0000 (20:01 +0200)]
Merge pull request #41530 from rhcs-dashboard/wip-50884-octopus

octopus: mgr/dashboard: fix OSDs Host details/overview grafana graphs

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: wornet-mwo <NOT@FOUND>
4 years agoMerge pull request #41508 from rhcs-dashboard/wip-50960-octopus
Ernesto Puerta [Fri, 11 Jun 2021 17:59:41 +0000 (19:59 +0200)]
Merge pull request #41508 from rhcs-dashboard/wip-50960-octopus

octopus: mgr/dashboard: fix API docs link

Reviewed-by: Waad Alkhoury <walkhour@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
4 years agoMerge pull request #41199 from votdev/wip-50663-octopus
Ernesto Puerta [Fri, 11 Jun 2021 08:40:56 +0000 (10:40 +0200)]
Merge pull request #41199 from votdev/wip-50663-octopus

octopus: mgr/dashboard: disable NFSv3 support in dashboard

Reviewed-by: Waad Alkhoury <walkhour@redhat.com>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
Reviewed-by: sebastian-philipp <NOT@FOUND>
Reviewed-by: Volker Theile <vtheile@suse.com>
4 years agoMerge pull request #41642 from idryomov/wip-rbd-qemu-precise-repos-octopus
Yuri Weinstein [Wed, 9 Jun 2021 18:45:55 +0000 (11:45 -0700)]
Merge pull request #41642 from idryomov/wip-rbd-qemu-precise-repos-octopus

octopus: qa/tasks/qemu: precise repos have been archived

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agoMerge pull request #41031 from trociny/wip-48424-octopus
Yuri Weinstein [Wed, 9 Jun 2021 16:24:25 +0000 (09:24 -0700)]
Merge pull request #41031 from trociny/wip-48424-octopus

octopus: rgw: check object locks in multi-object delete

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
4 years agorgw : add check empty for sync url 41766/head
cao.leilc [Fri, 2 Apr 2021 03:55:54 +0000 (11:55 +0800)]
rgw : add check empty for sync url

Fixes: https://tracker.ceph.com/issues/50103
Signed-off-by: caolei <halei15848934852@163.com>
(cherry picked from commit 3a4e0b79310b21eeee37043d5419887bb41c0cf6)

4 years agorgw: require bucket name in bucket chown 41765/head
Zulai Wang [Thu, 3 Jun 2021 05:13:15 +0000 (13:13 +0800)]
rgw: require bucket name in bucket chown

Checking and reporting missing the mandatory parameter avoid clueless error
message for bucket chown.

Signed-off-by: Zulai Wang <zl31wang@gmail.com>
(cherry picked from commit 158a1f4313c0fa206031ede6f48a26c0c7467d57)

4 years agomgr/DaemonServer.cc: prevent integer underflow that is triggered by large increases... 41764/head
Cory Snyder [Fri, 28 May 2021 19:08:49 +0000 (15:08 -0400)]
mgr/DaemonServer.cc: prevent integer underflow that is triggered by large increases to pg_num/pgp_num

This fixes a scenario where mgrs continually crash while attempting to apply large increases to pg_num/pgp_num. The max step size (estmax) for each incremental update to the pgp_num is calculated as a percentage of the pg_num, which permits the possibility for the max step size (estmax) to be greater than the current pgp_num when the increase is large; this causes an integer underflow when the max step size is subtracted from the pgp_num in order to calculate the next step size with std::clamp. The integer underflow causes hi < lo in args passed to std::clamp, which causes a failed assertion, SIGABRT, and ultimately crashing mgr.

Fixes: https://tracker.ceph.com/issues/47738
Signed-off-by: Cory Snyder <csnyder@iland.com>
(cherry picked from commit b4316d257e928b3789b818054927c2e98bb3c0d6)

4 years agoqa/tasks/qemu: precise repos have been archived 41642/head
Ilya Dryomov [Tue, 1 Jun 2021 10:46:32 +0000 (12:46 +0200)]
qa/tasks/qemu: precise repos have been archived

Fixes: https://tracker.ceph.com/issues/51033
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit dcd193c35eba7583613b805ab3941ff3ac5df745)

4 years agoos/bluestore: fix unexpected ENOSPC in Avl/Hybrid allocators. 41658/head
Igor Fedotov [Mon, 17 May 2021 19:23:26 +0000 (22:23 +0300)]
os/bluestore: fix unexpected ENOSPC in Avl/Hybrid allocators.

Avl allocator mode was returning unexpected ENOSPC in first-fit mode if all size-
matching available extents were unaligned but applying the alignment made all of
them shorter than required. Since no lookup retry with smaller size -
ENOSPC is returned.
Additionally we should proceed with a lookup in best-fit mode even when
original size has been truncated to match the avail size.
(force_range_size_alloc==true)

Fixes: https://tracker.ceph.com/issues/50656
Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 0eed13a4969d02eeb23681519f2a23130e51ac59)

4 years agotest/allocator_replay_test: make allocator type configurable
Igor Fedotov [Mon, 17 May 2021 19:21:53 +0000 (22:21 +0300)]
test/allocator_replay_test: make allocator type configurable

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit f4d1ef9a95e31cb67499ddb265548eda73ab4289)

 Conflicts:
src/test/objectstore/allocator_replay_test.cc - use bmap_allocator_replay_test

4 years agomgr/dashboard: fix bucket objects and size calculations 41647/head
Avan Thakkar [Tue, 1 Jun 2021 14:21:16 +0000 (19:51 +0530)]
mgr/dashboard: fix bucket objects and size calculations

Fixes: https://tracker.ceph.com/issues/51035
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit 9f5ef98d9c88a91b80e622f16f7061eddff79b2c)

4 years agoMerge pull request #41511 from ideepika/wip-49592-upgrade-octopus
Ilya Dryomov [Tue, 1 Jun 2021 22:04:54 +0000 (00:04 +0200)]
Merge pull request #41511 from ideepika/wip-49592-upgrade-octopus

octopus: qa/upgrade: disable update_features test_notify with older client as lockowner

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 years agooctopus: qa/upgrade: disable update_features test_notify with older client as lockowner 41511/head
Deepika Upadhyay [Wed, 26 May 2021 19:18:38 +0000 (00:48 +0530)]
octopus: qa/upgrade: disable update_features test_notify with older client as lockowner

 * with the recent support for async rbd operations from pacific+ when an
 older client(non async support) goes on upgrade, and simultaneously
 interacts with a newer client which expects the requests to be async,
 experiences hang; considering the return code for request completion to
 be acknowledgement for async request, which then keeps waiting for
 another acknowledgement of request completion.

 this if happens should be a rare only when lockowner is an old client
 and should be deferred if compatibility issues arises.

 * qa/upgrade: amend upgrade test workunits to use respective stable branches

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years agodoc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/ 41624/head
Kefu Chai [Tue, 11 May 2021 04:18:56 +0000 (12:18 +0800)]
doc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/

max_misplaced with replaced by in target_max_misplaced_ratio
edbd592ee44e02a5328e1510879555c2f9dcfc9e, but the document was not
sync'ed. let's update it accordingly.

Fixes: https://tracker.ceph.com/issues/50745
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit cc43462ab3d4b38cf0c496ae084b82c20ba449ae)

4 years agoosd/PG.cc: handle removal of pgmeta object 41623/head
Neha Ojha [Thu, 22 Apr 2021 17:13:40 +0000 (17:13 +0000)]
osd/PG.cc: handle removal of pgmeta object

In 7f047005fc72e1f37a45cde2d742bb2eb1e62881, we made the pg removal code
much more efficient. But it started marking the pgmeta object as an unexpected
onode, which in reality is expected to be removed after all the other objects.

This behavior is very easily reproducible in a vstart cluster:

ceph osd pool create test 1 1
rados -p test bench 10 write --no-cleanup
ceph osd pool delete test test  --yes-i-really-really-mean-it

Before this patch:

"do_delete_work additional unexpected onode list (new onodes has appeared
since PG removal started[#2:00000000::::head#]" seen in the OSD logs.

After this patch:

"do_delete_work removing pgmeta object #2:00000000::::head#" is seen.

Related to:https://tracker.ceph.com/issues/50466
Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit 0e917f1b1e18ca9e48b3f91110d3a46b086f7d83)

4 years agocrush/crush: ensure alignof(crush_work_bucket) is 1 41622/head
Kefu Chai [Wed, 26 May 2021 06:58:33 +0000 (14:58 +0800)]
crush/crush: ensure alignof(crush_work_bucket) is 1

in do_rule(), we allocate the space for crush_work_bucket using

char work[crush_work_size(crush, maxout)];

where crush_work_size() calculate the size like:

map->working_size + result_max * 3 * sizeof(__u32);

so work is allocated on stack, but the alignment of the
crush_work_bucket struct is not taken into consideration, so in
crush_init_workspace(), point could point to an address which is not
aligned to 8 bytes, which is the alignment of crush_work_bucket by
default. so is its member variables, all of them are uint32_t, and hence
are also 8-bytes aligned.

to ensure the compiler generate the correct assembly for accessing
the member variables without assuming that the struct is 8-byte
aligned, we should specify the alignment explicitly.

in this change, `__attribute__ ((packed))` is specified for
crush_work_bucket, so that its alignment is 1.

this issue is spotted by ASan, it complains like:

../src/crush/mapper.c:881:22: runtime error: member access within misaligned address 0x7ffe051f90dc for type 'struct crush_work_bucket', which requires 8 byte alignment
0x7ffe051f90dc: note: pointer points here
  1d e5 77 3d 68 55 00 00  00 00 00 00 00 00 00 00  20 93 1f 05 fe 7f 00 00  10 91 1f 05 fe 7f 00 00
              ^
../src/crush/mapper.c:882:22: runtime error: member access within misaligned address 0x7ffe051f90dc for type 'struct crush_work_bucket', which requires 8 byte alignment
0x7ffe051f90dc: note: pointer points here
  1d e5 77 3d 00 00 00 00  00 00 00 00 00 00 00 00  20 93 1f 05 fe 7f 00 00  10 91 1f 05 fe 7f 00 00
              ^
../src/crush/mapper.c:883:20: runtime error: member access within misaligned address 0x7ffe051f90dc for type 'struct crush_work_bucket', which requires 8 byte alignment
0x7ffe051f90dc: note: pointer points here
  1d e5 77 3d 00 00 00 00  00 00 00 00 00 00 00 00  20 93 1f 05 fe 7f 00 00  10 91 1f 05 fe 7f 00 00
              ^

Fixes: https://tracker.ceph.com/issues/50978
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 1fa8c925baeea549a824e463c89060dd60434f3f)

4 years agomon: load stashed map before mkfs monmap 41621/head
Dan van der Ster [Thu, 8 Apr 2021 10:12:55 +0000 (12:12 +0200)]
mon: load stashed map before mkfs monmap

After mkfs the store may not yet contain monmap:last_committed but
might be respawning after setting mon_sync:temp_newer_monmap.
Load that stashed map before falling back to the mkfs:monmap.

Fixes: https://tracker.ceph.com/issues/50230
Signed-off-by: Dan van der Ster <daniel.vanderster@cern.ch>
(cherry picked from commit cc0b4c77753962717da8a280a585990f7eec3c7b)

4 years agoosd: clear data digest when write_trunc 41620/head
Aran85 [Wed, 12 May 2021 01:33:06 +0000 (09:33 +0800)]
osd: clear data digest when write_trunc

like CEPH_OSD_OP_TRUNCATE, the truncate within CEPH_OSD_OP_WRITE should
clear oi.data_digest too.

consider such circumstance:
[write 0~10]
[write 5~10 [1@5]]

the first write will generate data_digest, if the second write don't
clear digest, it will continue calc digest and make crc mismatch.

Fixes: https://tracker.ceph.com/issues/50763
Signed-off-by: Zengran Zhang <zhangzengran@sangfor.com.cn>
(cherry picked from commit 0e4ffe5e51291d1776aacfc0d88aa3b5f4c3ecca)

4 years agotest: bump DecayCounter.steady acceptable error 41619/head
Patrick Donnelly [Thu, 15 Apr 2021 13:57:57 +0000 (06:57 -0700)]
test: bump DecayCounter.steady acceptable error

The test is often run on heavily loaded machines which will effect the
precision of the test.

Fixes: https://tracker.ceph.com/issues/50378
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 9a369ef119dbc10c0dbf6da286a8eb6faa14606c)

4 years agomon/OSDMonitor: drop stale failure_info even if can_mark_down() 41618/head
Kefu Chai [Tue, 25 May 2021 06:17:34 +0000 (14:17 +0800)]
mon/OSDMonitor: drop stale failure_info even if can_mark_down()

in a124ee85b03e15f4ea371358008ecac65f9f4e50, we add a check to drop
stale failure_info reports. but if osdmap does not prohibit us from
marking the osd in question down, the branch checking the stale info
is not executed. in general, it is allowed to mark an osd down, so
the fix of a124ee85b03e15f4ea371358008ecac65f9f4e50 just fails to
work.

in this change, we check for stale failure report of osd in question
as long as the osd is not marked down in the same function. this should
address the slow ops of failure report issue.

Fixes: https://tracker.ceph.com/issues/50964
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit df6916a56841f89d66fd211729a0a7adc13042cf)

4 years agomgr: do not load disabled modules
Kefu Chai [Thu, 30 Apr 2020 03:34:07 +0000 (11:34 +0800)]
mgr: do not load disabled modules

an option named "mgr_disabled_modules" is added in this change to
prevent mgr from loading modules listed in this option. because mgr
loads *all* modules found in the configured path, and per
https://tracker.ceph.com/issues/45147, python subinterpreter could hang
when loading numpy, so this behavior practically creates a deadlock
in mgr.

this issue is found when mgr uses python3.8 runtime. in development
environment, it'd be inconvenient to disable the offending mgr module
without changing the source code, even if we can choose to not install
them, for instance, the enduser can workaround this issue by
uninstalling `ceph-mgr-diskprediction-local`.

an option would be useful in this case, so we can add the module to the
list before mgr tries to load it.

as this issue is found with python3.8 + diskprediction_local (numpy), so
this mgr module is disabled by default if mgr is compiled with python3.8
runtime.

Fixes: https://tracker.ceph.com/issues/45147
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 067adbf9a032b5de793fd0b41b071f24f075270a)

4 years agomgr/PyModuleRegistry: probe modules using std::filesystem
Kefu Chai [Thu, 30 Apr 2020 02:43:01 +0000 (10:43 +0800)]
mgr/PyModuleRegistry: probe modules using std::filesystem

for better readability

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 40d06ce623f19172721a2f1d5b4f4f8b642a3077)

4 years agoos/bluestore: introduce multithireading sync for bluestore's repairer 41613/head
Igor Fedotov [Wed, 19 May 2021 23:17:21 +0000 (02:17 +0300)]
os/bluestore: introduce multithireading sync for bluestore's repairer

In quick-fix mode bluestore uses 2 threads by default to perform the
repair. Due to lacking synchronization they might corrupt repair
transaction batch.

Fixes: https://tracker.ceph.com/issues/50017
Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 38c5b04235402a7908bc4713f617d767ca9fdc56)

Conflicts:
src/os/bluestore/BlueStore.cc
src/os/bluestore/BlueStore.h

4 years agotest/bluestore: add test case to reproduce #50017
Igor Fedotov [Wed, 19 May 2021 23:15:32 +0000 (02:15 +0300)]
test/bluestore: add test case to reproduce #50017

This issue is caused by the lack of multithreading sync when doing
bluestore's quick-fix.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 339a4257a1bfb7dc5d47b019a8a6492affa05b7c)

4 years agoos/bluestore: tolerate zero length for allocators' init_[add/rm]_free() 41612/head
Igor Fedotov [Thu, 29 Apr 2021 18:16:44 +0000 (21:16 +0300)]
os/bluestore: tolerate zero length for allocators' init_[add/rm]_free()

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 6548e5d991810e89fc1ac14eb4fcf1a37a2b129f)

4 years agoosd/PeeringState: fix acting_set_writeable min_size check 41609/head
Samuel Just [Fri, 2 Apr 2021 22:30:54 +0000 (22:30 +0000)]
osd/PeeringState: fix acting_set_writeable min_size check

acting.size() >= pool.info.min_size is meant to check min_size against
acting set participants, but acting is a vector with placeholders.
actingset is the representation with placeholders removed.

The upshot of this bug is that the activation process will basically
ignore min_size for an ec pool allowing writes in cases where it
shouldn't.  PastIntervals::check_new_interval, however, performs
the check correctly, and will therefore discount intervals in which
we really did serve writes as not writeable.  This can trigger many
different problem conditions including but not limited to:
  - Unfound objects due to accepting a last_update with insufficient
    osds
  - Lost writes
  - Crashes due to peering rules being violated

This bug was originally introduced with recovery below min_size in
e5a96fd, and then preserved through refactors in 749a13d and 95bec9.

7cb818a exposed it with with expansion of recovery below min_size
to include ec pools (acting.size() is sufficient for replicated
pools).

Fixes: https://tracker.ceph.com/issues/48613
Fixes: https://tracker.ceph.com/issues/48417
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit 642a1c165499bcbd4cfdf907af313ac7ffe44ff4)

Conflicts:
src/osd/PeeringState.h

Fixes the callers rather than also backporting 95bec9873.

4 years agoosd/PeeringState: fix get_backfill_priority min_size comparison
Samuel Just [Fri, 2 Apr 2021 23:06:14 +0000 (23:06 +0000)]
osd/PeeringState: fix get_backfill_priority min_size comparison

acting has placeholders for ec, need to use actingset.

Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit 7b2e0f4fd1c9071495dae9189428aa1cb8774c30)

4 years agocephadm: fix port_in_use when IPv6 is disabled 41602/head
Patrick Seidensal [Thu, 11 Feb 2021 15:22:06 +0000 (16:22 +0100)]
cephadm: fix port_in_use when IPv6 is disabled

Do not return "port is in use" when the protocol family tested is not
supported (due to being deactivated).

Fixes: https://tracker.ceph.com/issues/49273
Conflicts:
    src/cephadm/cephadm
    src/cephadm/tests/test_cephadm.py

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
(cherry picked from commit a0ffcec4af7a6f464439023d3dd0ccb62c8a856c)

4 years agorgw: send headers of quota settings 41419/head
Or Friedmann [Thu, 15 Oct 2020 15:40:27 +0000 (18:40 +0300)]
rgw: send headers of quota settings

Make the quota settings visible to s3 and swift users
rgw send headers of quota settings

Fixes: https://tracker.ceph.com/issues/47752
Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit 706e077a79306f9c1efd66af7e5d9fdb474f629b)

 Conflicts:
src/rgw/rgw_op.cc

4 years agoceph: ignore BrokenPipeError when printing help 41586/head
Ernesto Puerta [Fri, 11 Sep 2020 10:10:16 +0000 (12:10 +0200)]
ceph: ignore BrokenPipeError when printing help

ignore BrokenPipeError which is thrown when piping the output of ceph
CLI to a tool which might close its stdin before ceph CLI sends the
whole help message.

Follow approach suggested by Kefu: https://github.com/python/cpython/commit/7b0ed43af55c1e2844aa0ccd5e088b2ddd38dbdb
This doesn't manage the clean-up/exit logic, as that's deferred to the
last part of the __main__ code.

Fixes: https://tracker.ceph.com/issues/47400
Signed-off-by: Ernesto Puerta <epuertat@redhat.com>
(cherry picked from commit 39768459f6e542dc4c18407fed4f8412abe759fe)

4 years agoceph-volume: consider /dev/root mounted 41584/head
David Caro [Fri, 7 May 2021 15:58:23 +0000 (17:58 +0200)]
ceph-volume: consider /dev/root mounted

Fixes: https://tracker.ceph.com/issues/50604
Signed-off-by: David Caro <david@dcaro.es>
(cherry picked from commit c7b959c35ff463cfbffa2abf0f56a1c1a5f594c8)

4 years agotest: add ceph_mksnap and ceph_rmsnap replacements 40768/head
Jeff Layton [Wed, 26 May 2021 11:05:13 +0000 (07:05 -0400)]
test: add ceph_mksnap and ceph_rmsnap replacements

Signed-off-by: Jeff Layton <jlayton@redhat.com>
4 years agooctopus: qa/cephadm/upgrade: use v15.2.9 for cephadm tests 41568/head
Deepika Upadhyay [Thu, 27 May 2021 08:10:43 +0000 (13:40 +0530)]
octopus: qa/cephadm/upgrade: use v15.2.9 for cephadm tests

the issues https://tracker.ceph.com/issues/48142 is fixed in
67166de82a913e8266c8146f5c8a67d536065fc2 which at minimal needs v15.2.8
to be effective.

cherry-pick was not trivial because of difference in set of distro used
for testing.

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
4 years ago15.2.13 v15.2.13
Jenkins Build Slave User [Wed, 26 May 2021 19:24:07 +0000 (19:24 +0000)]
15.2.13

4 years agotest: add test case for MDS privated inos accessing
Xiubo Li [Wed, 28 Apr 2021 01:32:24 +0000 (09:32 +0800)]
test: add test case for MDS privated inos accessing

Fixes: https://tracker.ceph.com/issues/50216
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 0ec4d781787df777bbfdeb742b394c73a0d76e08)

Conflicts:
src/test/libcephfs/test.cc
- octopus version of this file is missing lots of tests that were added to
  master post-octopus

4 years agomds: make the lost+found dir accessible from clients
Xiubo Li [Mon, 19 Apr 2021 02:34:02 +0000 (10:34 +0800)]
mds: make the lost+found dir accessible from clients

Inode number 0x4 is reserved for the lost+found dir, and the apps
or recovery apps need to access it.

At the same time the 0x3 is reserved for the global snaprealm, which
will also be lookup by the clients when looking up the snaprealm inodes.

Here will make all the inode less than 100 accessible by clients.

Fixes: https://tracker.ceph.com/issues/50216
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 841071b3602aa2b8bcca57b95cdf671d48036a34)

Conflicts:
src/mds/Server.cc
- code being changed does not exist in octopus: change omitted

4 years agomds: move the inos 1,2 and 3 macros to ceph_fs.h
Xiubo Li [Tue, 20 Apr 2021 01:08:20 +0000 (09:08 +0800)]
mds: move the inos 1,2 and 3 macros to ceph_fs.h

For inos 1 and 2 there has two places are defining them, to make
sure we won't miss any one of them, let's define them in only one
header file.

Fixes: https://tracker.ceph.com/issues/50216
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 8615807237458e8cebf9497a7431097cdc56c784)

Conflicts:
src/client/Inode.h
src/mds/CInode.h
src/mds/MDCache.cc
src/mds/Server.cc
        src/mds/SnapServer.h
- change MDS_INO_ROOT to CEPH_INO_ROOT in src/mds/SnapServer.h (octopus-only)

4 years agoclient: don't allow access to MDS-private inodes
Xiubo Li [Wed, 7 Apr 2021 11:37:26 +0000 (19:37 +0800)]
client: don't allow access to MDS-private inodes

Fixes: https://tracker.ceph.com/issues/50112
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 89c511356125f892477ef42bd14c0b447ff06106)

Conflicts:
src/client/Client.cc
- octopus wants ESTALE instead of CEPHFS_ESTALE

4 years agoclient: add testcase for ceph_ll_lookup_vino
Jeff Layton [Wed, 3 Feb 2021 15:24:16 +0000 (10:24 -0500)]
client: add testcase for ceph_ll_lookup_vino

Signed-off-by: Jeff Layton <jlayton@redhat.com>
(cherry picked from commit a956c7986fd43da851918b87c71524f9a2bb1162)

Conflicts:
src/test/libcephfs/test.cc
- octopus is missing a bunch of tests, but this doesn't matter because the
  commit being cherry-picked did not touch those

4 years agoclient: add ceph_ll_lookup_vino
Jeff Layton [Mon, 1 Feb 2021 16:04:07 +0000 (11:04 -0500)]
client: add ceph_ll_lookup_vino

Add a new API function for looking up an inode via a vinodeno_t. This
should give ganesha a way to reliably look up snapshot inodes.

We do need to add some special handling for CEPH_SNAPDIRs. If we're
looking for one, then find the non-snapped parent, and then call
open_snapdir to get the snapdir inode.

Also, have the function check the local cache before calling the MDS
to look up an inode.

Fixes: https://tracker.ceph.com/issues/48991
Signed-off-by: Jeff Layton <jlayton@redhat.com>
(cherry picked from commit 70622079c2ec55222a139fa5042902e0b19bd839)

Conflicts:
src/client/Client.cc