]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
5 years agoMerge pull request #36667 from smithfarm/wip-46964-octopus
Yuri Weinstein [Sat, 22 Aug 2020 18:09:16 +0000 (11:09 -0700)]
Merge pull request #36667 from smithfarm/wip-46964-octopus

octopus: mgr: decrease pool stats if pg was removed

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Igor Fedotov <ifedotov@suse.com>
5 years agoMerge pull request #36666 from smithfarm/wip-46934-octopus
Yuri Weinstein [Sat, 22 Aug 2020 18:08:23 +0000 (11:08 -0700)]
Merge pull request #36666 from smithfarm/wip-46934-octopus

octopus: tools/rados: Set locator key when exporting or importing a pool

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #36665 from smithfarm/wip-46739-octopus
Yuri Weinstein [Sat, 22 Aug 2020 18:06:57 +0000 (11:06 -0700)]
Merge pull request #36665 from smithfarm/wip-46739-octopus

octopus: mon: fix the 'Error ERANGE' message when conf "osd_objectstore" is filestore

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
5 years agoMerge pull request #36664 from smithfarm/wip-46722-octopus
Yuri Weinstein [Sat, 22 Aug 2020 18:06:06 +0000 (11:06 -0700)]
Merge pull request #36664 from smithfarm/wip-46722-octopus

octopus: osd/OSD.cc: remove osd_lock for bench

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
5 years agoMerge pull request #36663 from smithfarm/wip-46709-octopus
Yuri Weinstein [Sat, 22 Aug 2020 18:04:59 +0000 (11:04 -0700)]
Merge pull request #36663 from smithfarm/wip-46709-octopus

octopus: osd/PeeringState: prevent peer's num_objects going negative

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
5 years agoMerge pull request #36633 from smithfarm/wip-46951-octopus
Yuri Weinstein [Fri, 21 Aug 2020 19:47:31 +0000 (12:47 -0700)]
Merge pull request #36633 from smithfarm/wip-46951-octopus

octopus: monclient: schedule first tick using mon_client_hunt_interval

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
5 years agoMerge pull request #36643 from smithfarm/wip-46931-octopus
Yuri Weinstein [Fri, 21 Aug 2020 18:30:07 +0000 (11:30 -0700)]
Merge pull request #36643 from smithfarm/wip-46931-octopus

octopus: librados: add LIBRADOS_SUPPORTS_GETADDRS support

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #36630 from smithfarm/wip-46958-octopus
Yuri Weinstein [Fri, 21 Aug 2020 18:28:48 +0000 (11:28 -0700)]
Merge pull request #36630 from smithfarm/wip-46958-octopus

octopus: mgr/status: metadata is fetched async

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
5 years agoMerge pull request #36611 from tspmelo/wip-46924-octopus
Yuri Weinstein [Fri, 21 Aug 2020 18:26:15 +0000 (11:26 -0700)]
Merge pull request #36611 from tspmelo/wip-46924-octopus

octopus: mgr/dashboard: Unable to edit iSCSI logged-in client

Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agoMerge pull request #36577 from callithea/wip-46715-octopus
Yuri Weinstein [Fri, 21 Aug 2020 18:25:25 +0000 (11:25 -0700)]
Merge pull request #36577 from callithea/wip-46715-octopus

octopus: mgr/diskprediction_local: Fix array size error

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
5 years agoMerge pull request #36717 from smithfarm/wip-47022-octopus
Yuri Weinstein [Fri, 21 Aug 2020 14:08:01 +0000 (07:08 -0700)]
Merge pull request #36717 from smithfarm/wip-47022-octopus

octopus: rbd: librbd: Align rbd_write_zeroes declarations

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #36678 from bk201/wip-46944-octopus
Yuri Weinstein [Fri, 21 Aug 2020 14:07:25 +0000 (07:07 -0700)]
Merge pull request #36678 from bk201/wip-46944-octopus

octopus: mgr/dashboard: Fix host attributes like labels are not returned

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
5 years agoMerge pull request #36581 from callithea/wip-46717-octopus
Yuri Weinstein [Fri, 21 Aug 2020 14:06:12 +0000 (07:06 -0700)]
Merge pull request #36581 from callithea/wip-46717-octopus

octopus: mgr/prometheus: log time it takes to collect metrics

Reviewed-by: Patrick Seidensal <pnawracay@suse.com>
5 years agoMerge pull request #36302 from dillaman/wip-46724-octopus
Yuri Weinstein [Fri, 21 Aug 2020 14:05:16 +0000 (07:05 -0700)]
Merge pull request #36302 from dillaman/wip-46724-octopus

octopus: ceph-iscsi: selinux fixes

Reviewed-by: Nathan Cutler <ncutler@suse.com>
5 years agoMerge pull request #36260 from rhcs-dashboard/wip-46672-octopus
Lenz Grimmer [Fri, 21 Aug 2020 09:13:32 +0000 (11:13 +0200)]
Merge pull request #36260 from rhcs-dashboard/wip-46672-octopus

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
5 years agolibrbd: Align rbd_write_zeroes declarations 36717/head
Corey Bryant [Mon, 17 Aug 2020 12:19:25 +0000 (08:19 -0400)]
librbd: Align rbd_write_zeroes declarations

Fixes: https://tracker.ceph.com/issues/46928
Signed-off-by: Corey Bryant <corey.bryant@canonical.com>
(cherry picked from commit 32fcd679132fab93ea50ec791f559ad2b09d8a2b)

5 years agoselinux: Fix ceph-iscsi etc access 36302/head
Mike Christie [Thu, 9 Jan 2020 00:37:15 +0000 (18:37 -0600)]
selinux: Fix ceph-iscsi etc access

This fixes the selinux errors like this for /etc/target

-----------------------------------
Additional Information:
Source Context                system_u:system_r:ceph_t:s0
Target Context                system_u:object_r:targetd_etc_rw_t:s0
Target Objects                target [ dir ]
Source                        rbd-target-api
Source Path                   rbd-target-api
Port                          <Unknown>
Host                          ans8
Source RPM Packages
Target RPM Packages
Policy RPM                    selinux-policy-3.14.3-20.el8.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     ans8
Platform                      Linux ans8 4.18.0-147.el8.x86_64 #1 SMP
Thu Sep 26
                              15:52:44 UTC 2019 x86_64 x86_64
Alert Count                   1
First Seen                    2020-01-08 18:39:48 EST
Last Seen                     2020-01-08 18:39:48 EST
Local ID                      9a13ee18-eaf2-4f2a-872f-2809ee4928f6

Raw Audit Messages
type=AVC msg=audit(1578526788.148:69): avc:  denied  { search } for
pid=995 comm="rbd-target-api" name="target" dev="sda1" ino=52198
scontext=system_u:system_r:ceph_t:s0
tcontext=system_u:object_r:targetd_etc_rw_t:s0 tclass=dir permissive=1

Hash: rbd-target-api,ceph_t,targetd_etc_rw_t,dir,search

which are a result of the rtslib library the ceph-iscsi daemons use
accessing /etc/target to read/write a file which stores meta data the
target uses.

Signed-off-by: Mike Christie <mchristi@redhat.com>
(cherry picked from commit 53be18165323a80895a34185df4ad9e8d37db618)

5 years agoselinux: Fix ceph-iscsi configfs access
Mike Christie [Thu, 9 Jan 2020 00:03:40 +0000 (18:03 -0600)]
selinux: Fix ceph-iscsi configfs access

This fixes the the following selinux error when using ceph-iscsi's
rbd-target-api daemon (rbd-target-gw has the same issue). They are
a result of the a python library, rtslib, which the daemons use.

Additional Information:
Source Context                system_u:system_r:ceph_t:s0
Target Context                system_u:object_r:configfs_t:s0
Target Objects
/sys/kernel/config/target/iscsi/iqn.2003-01.com.re
                              dhat:ceph-iscsi/tpgt_1/attrib/authentication
[
                              file ]
Source                        rbd-target-api
Source Path                   /usr/libexec/platform-python3.6
Port                          <Unknown>
Host                          ans8
Source RPM Packages           platform-python-3.6.8-15.1.el8.x86_64
Target RPM Packages
Policy RPM                    selinux-policy-3.14.3-20.el8.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     ans8
Platform                      Linux ans8 4.18.0-147.el8.x86_64 #1 SMP
Thu Sep 26
                              15:52:44 UTC 2019 x86_64 x86_64
Alert Count                   1
First Seen                    2020-01-08 18:39:47 EST
Last Seen                     2020-01-08 18:39:47 EST
Local ID                      6f8c3415-7a50-4dc8-b3d2-2621e1d00ca3

Raw Audit Messages
type=AVC msg=audit(1578526787.577:68): avc:  denied  { ioctl } for
pid=995 comm="rbd-target-api"
path="/sys/kernel/config/target/iscsi/iqn.2003-01.com.redhat:ceph-iscsi/tpgt_1/attrib/authentication"
dev="configfs" ino=25703 ioctlcmd=0x5401
scontext=system_u:system_r:ceph_t:s0
tcontext=system_u:object_r:configfs_t:s0 tclass=file permissive=1

type=SYSCALL msg=audit(1578526787.577:68): arch=x86_64 syscall=ioctl
success=no exit=ENOTTY a0=34 a1=5401 a2=7ffd4f8f1f60 a3=3052cd2d95839b96
items=0 ppid=1 pid=995 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0
egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm=rbd-target-api
exe=/usr/libexec/platform-python3.6 subj=system_u:system_r:ceph_t:s0
key=(null)

Hash: rbd-target-api,ceph_t,configfs_t,file,ioctl

Signed-off-by: Mike Christie <mchristi@redhat.com>
(cherry picked from commit 8187235c91e897cb8c167ee4cbb90d910103709b)

5 years agoMerge pull request #36655 from smithfarm/wip-46968-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:42:51 +0000 (14:42 -0700)]
Merge pull request #36655 from smithfarm/wip-46968-octopus

octopus: rgw: introduce safe user-reset-stats

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #36654 from smithfarm/wip-46966-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:42:17 +0000 (14:42 -0700)]
Merge pull request #36654 from smithfarm/wip-46966-octopus

octopus: rgw: fix double slash (//) killing the gateway

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #36653 from smithfarm/wip-46955-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:41:43 +0000 (14:41 -0700)]
Merge pull request #36653 from smithfarm/wip-46955-octopus

octopus: rgw: fix shutdown crash in RGWAsyncReadMDLogEntries

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
5 years agoMerge pull request #36652 from smithfarm/wip-46949-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:40:48 +0000 (14:40 -0700)]
Merge pull request #36652 from smithfarm/wip-46949-octopus

octopus: cls/rgw: preserve olh entry's name on last unlink

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #36651 from smithfarm/wip-46938-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:39:54 +0000 (14:39 -0700)]
Merge pull request #36651 from smithfarm/wip-46938-octopus

octopus: qa/tasks/ragweed: always set ragweed_repo

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
5 years agoMerge pull request #36650 from smithfarm/wip-46929-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:38:45 +0000 (14:38 -0700)]
Merge pull request #36650 from smithfarm/wip-46929-octopus

octopus: rgw: Empty reqs_change_state queue before unregistered_reqs

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
5 years agoMerge pull request #36649 from smithfarm/wip-46640-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:37:58 +0000 (14:37 -0700)]
Merge pull request #36649 from smithfarm/wip-46640-octopus

octopus: rgw: add abort multipart date and rule-id header to init multipart upload response

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #36648 from smithfarm/wip-46593-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:37:14 +0000 (14:37 -0700)]
Merge pull request #36648 from smithfarm/wip-46593-octopus

octopus: rgw: add negative cache to the system object

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #36647 from smithfarm/wip-46518-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:36:31 +0000 (14:36 -0700)]
Merge pull request #36647 from smithfarm/wip-46518-octopus

octopus: rgw: fix boost::asio::async_write() does not return error...

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
5 years agoMerge pull request #36646 from smithfarm/wip-46510-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:35:31 +0000 (14:35 -0700)]
Merge pull request #36646 from smithfarm/wip-46510-octopus

octopus: rgw: Adding data cache and CDN capabilities

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #36645 from smithfarm/wip-46475-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:34:41 +0000 (14:34 -0700)]
Merge pull request #36645 from smithfarm/wip-46475-octopus

octopus: rgw/iam: correcting the result of get role policy.

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #36636 from smithfarm/wip-46953-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:32:10 +0000 (14:32 -0700)]
Merge pull request #36636 from smithfarm/wip-46953-octopus

octopus: rgw: policy: reuse eval_principal to evaluate the policy principal

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #36026 from smithfarm/wip-46457-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:31:34 +0000 (14:31 -0700)]
Merge pull request #36026 from smithfarm/wip-46457-octopus

octopus: selinux: allow ceph_t amqp_port_t:tcp_socket

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #36018 from smithfarm/wip-45922-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:29:57 +0000 (14:29 -0700)]
Merge pull request #36018 from smithfarm/wip-45922-octopus

octopus: rgw: lc: add lifecycle perf counters

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
5 years agoMerge pull request #35929 from smithfarm/wip-46343-octopus
Yuri Weinstein [Tue, 18 Aug 2020 21:26:51 +0000 (14:26 -0700)]
Merge pull request #35929 from smithfarm/wip-46343-octopus

octopus: rgw: orphan-list timestamp fix

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
5 years agomgr/prometheus: log time it takes to collect metrics 36581/head
Patrick Seidensal [Tue, 9 Jun 2020 13:58:54 +0000 (15:58 +0200)]
mgr/prometheus: log time it takes to collect metrics

When debug is enabled, the time it takes to gather the various types of
metrics is logged by type.

Fixes: https://tracker.ceph.com/issues/46444
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
(cherry picked from commit a5f86cb85fcbf8a9003bf511b57a6d6b4a0e1f41)

 Conflicts:
src/pybind/mgr/mgr_util.py
  - Some more imports in master compared to octopus;
    had to add "import time" (line 6)  manually, otherwise make check
    would fail with a mypy error ('time is not defined')

5 years agoMerge pull request #36638 from smithfarm/wip-46945-octopus
Yuri Weinstein [Tue, 18 Aug 2020 14:05:40 +0000 (07:05 -0700)]
Merge pull request #36638 from smithfarm/wip-46945-octopus

octopus: librbd:  global and pool-level config overrides require image refresh to apply

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Mykola Golub <mgolub@mirantis.com>/
5 years agoMerge pull request #36414 from shyukri/wip-46322-octopus
Yuri Weinstein [Tue, 18 Aug 2020 14:04:56 +0000 (07:04 -0700)]
Merge pull request #36414 from shyukri/wip-46322-octopus

octopus: osd/OSDCap: rbd profile permits use of "rbd_info"

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #36411 from shyukri/wip-46087-octopus
Yuri Weinstein [Tue, 18 Aug 2020 14:04:25 +0000 (07:04 -0700)]
Merge pull request #36411 from shyukri/wip-46087-octopus

octopus: mgr/prometheus: automatically discover RBD pools for stats gathering

Reviewed-by: Mykola Golub <mgolub@mirantis.com>/
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #36331 from dillaman/wip-librbd-aio-completion-octopus
Yuri Weinstein [Tue, 18 Aug 2020 14:03:50 +0000 (07:03 -0700)]
Merge pull request #36331 from dillaman/wip-librbd-aio-completion-octopus

octopus: librbd: potential race conditions handling API IO completions

Reviewed-by: Mykola Golub <mgolub@mirantis.com>/
5 years agoMerge pull request #36660 from smithfarm/wip-46721-octopus
Yuri Weinstein [Tue, 18 Aug 2020 13:58:32 +0000 (06:58 -0700)]
Merge pull request #36660 from smithfarm/wip-46721-octopus

octopus: rbd: immutable-object-cache: fixed crashes on start up

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #36659 from smithfarm/wip-46719-octopus
Yuri Weinstein [Tue, 18 Aug 2020 13:58:08 +0000 (06:58 -0700)]
Merge pull request #36659 from smithfarm/wip-46719-octopus

octopus: rbd: librbd: don't resend async_complete if watcher is unregistered

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #36658 from smithfarm/wip-46711-octopus
Yuri Weinstein [Tue, 18 Aug 2020 13:57:38 +0000 (06:57 -0700)]
Merge pull request #36658 from smithfarm/wip-46711-octopus

octopus: rbd: librbd: flush all queued object IO from simple scheduler

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Mykola Golub <mgolub@mirantis.com>/
5 years agoMerge pull request #36657 from smithfarm/wip-46309-octopus
Yuri Weinstein [Tue, 18 Aug 2020 13:56:56 +0000 (06:56 -0700)]
Merge pull request #36657 from smithfarm/wip-46309-octopus

octopus: tests/rbd_mirror: fix race on test shut down

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #36656 from smithfarm/wip-46150-octopus
Yuri Weinstein [Tue, 18 Aug 2020 13:56:07 +0000 (06:56 -0700)]
Merge pull request #36656 from smithfarm/wip-46150-octopus

octopus: rbd: librbd: race when disabling object map with overlapping in-flight writes

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #36662 from smithfarm/wip-46595-octopus
Yuri Weinstein [Tue, 18 Aug 2020 13:55:35 +0000 (06:55 -0700)]
Merge pull request #36662 from smithfarm/wip-46595-octopus

octopus: crush/CrushWrapper: rebuild reverse maps after rebuilding crush map

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
5 years agoMerge pull request #35772 from s0nea/wip-46205-octopus
Lenz Grimmer [Mon, 17 Aug 2020 15:00:26 +0000 (17:00 +0200)]
Merge pull request #35772 from s0nea/wip-46205-octopus

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
5 years agoMerge pull request #36350 from s0nea/wip-46751-octopus
Lenz Grimmer [Mon, 17 Aug 2020 13:32:27 +0000 (15:32 +0200)]
Merge pull request #36350 from s0nea/wip-46751-octopus

octopus: mgr/dashboard: Add hosts page unit tests

Reviewed-by: Kiefer Chang <kiefer.chang@suse.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
5 years agomgr/dashboard: Fix host attributes like labels are not returned 36678/head
Kiefer Chang [Mon, 3 Aug 2020 11:20:08 +0000 (19:20 +0800)]
mgr/dashboard: Fix host attributes like labels are not returned

The problem only happens when a host is reported both from Ceph and the
Orchestrator. There is an error on merging Ceph hosts with Orchestrator
hosts. The unit test is refined to test this case.

Fixes: https://tracker.ceph.com/issues/46761
Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
(cherry picked from commit 8f393f8e1bc2f5b20d2582aa48cefef23edc2153)

5 years agolibrbd: generic helper for tracking in-flight IO and managing flush requests 36658/head
Jason Dillaman [Thu, 7 May 2020 20:25:50 +0000 (16:25 -0400)]
librbd: generic helper for tracking in-flight IO and managing flush requests

Layers that potentially queue IOs but not all IOs will need to track all
in-flight IOs to properly ensure that a flush cannot complete while
older IO is still stuck in a queue.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit 728057e492a697191d72049ce64b337fa4c80078)

Conflicts:
src/librbd/CMakeLists.txt
- no "io/ImageDispatch.cc" in octopus

5 years agoMerge pull request #36416 from shyukri/wip-46639-octopus
Nathan Cutler [Sat, 15 Aug 2020 13:41:31 +0000 (15:41 +0200)]
Merge pull request #36416 from shyukri/wip-46639-octopus

octopus: doc/rbd: add rbd-target-gw enable and start

Reviewed-by: Nathan Cutler <ncutler@suse.com>
5 years agomgr: decrease pool stats if pg was removed 36667/head
Aleksei Gutikov [Mon, 30 Mar 2020 12:27:45 +0000 (15:27 +0300)]
mgr: decrease pool stats if pg was removed

After merge of placement groups resulting pg contains
objects from itself and merged one.
PGMap::apply_incremental treat this growth as pool stats delta,
but forget to decrease stats for removed pg.

Fixes: https://tracker.ceph.com/issues/44815
Signed-off-by: Aleksei Gutikov <aleksey.gutikov@synesis.ru>
(cherry picked from commit 6090acdae4495e11f117df2330b579744eeada2a)

5 years agotools/rados: Set locator key when exporting or importing a pool 36666/head
Iain Buclaw [Wed, 4 Mar 2020 14:32:43 +0000 (15:32 +0100)]
tools/rados: Set locator key when exporting or importing a pool

Fixes the following error when exporting a pool that contains objects
with a locator key set:

        error getting xattr set [object name]: (2) No such file or directory
        error from export: (2) No such file or directory

Fixes: https://tracker.ceph.com/issues/46824
Signed-off-by: Iain Buclaw <iain.buclaw@dunnhumby.com>
(cherry picked from commit ecb2df9177f30213b3ff48e76e6fe31fcbb430a7)

5 years agomon: fix the 'Error ERANGE' message when conf "osd_objectstore" is filestore 36665/head
wangyunqing [Thu, 16 Jul 2020 07:06:53 +0000 (15:06 +0800)]
mon: fix the 'Error ERANGE' message when conf "osd_objectstore" is filestore

Fixes: https://tracker.ceph.com/issues/37532
Signed-off-by: wangyunqing <wangyunqing@inspur.com>
(cherry picked from commit 4155a79f76b177ada79af746de4448773e07584a)

5 years agoosd/OSD.cc: remove osd_lock for bench 36664/head
Neha Ojha [Fri, 17 Jul 2020 16:52:56 +0000 (16:52 +0000)]
osd/OSD.cc: remove osd_lock for bench

8987f94416f453829eae6dda08837ef5a42531c6 introduced the osd_lock for the
bench command. Taking the osd_lock in bench can lead to deadlocks, causing the
command to hang as seen in https://tracker.ceph.com/issues/43888.

Fixes: https://tracker.ceph.com/issues/43888
Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit d6be0d3f9a091b8a2e20ea607434314d395a821c)

5 years agoosd/PeeringState: prevent peer's num_objects going negative 36663/head
xie xingguo [Fri, 24 Jul 2020 01:57:40 +0000 (09:57 +0800)]
osd/PeeringState: prevent peer's num_objects going negative

Saw it in a teuthology run:

 -5645> 2020-07-20 04:34:32.067 7f351e329700  5 osd.5 pg_epoch: 667 ... exit Started/Primary/Active/Backfilling
 -5642> 2020-07-20 04:34:32.067 7f351e329700  5 osd.5 pg_epoch: 667 ... enter Started/Primary/Active/Recovered
 -5633> 2020-07-20 04:34:32.067 7f351e329700 20 osd.5 pg_epoch: 667 ... _update_calc_stats shard 5 primary objects 0 missing 0
 -5632> 2020-07-20 04:34:32.067 7f351e329700 20 osd.5 pg_epoch: 667 ... _update_calc_stats shard 3 objects -1 missing 1
 -5631> 2020-07-20 04:34:32.067 7f351e329700 20 osd.5 pg_epoch: 667 ... _update_calc_stats shard 6 objects 0 missing 0

This will crash the choose_acting() procedure as it will mistakenly
think that peer 3 should continue to perform asynchronous recovery
(e.g., due to num_objects_missing = 1) in contrast to fully
backfill-recovered.

While I did not dig into the real cause, there are a couple of
possible explanations of how num_objects can be off. I think that
if a roll forward or log replay could delete something twice, maybe
there would be an undercount. Or maybe something as simple as a
corruption.

Since _update_calc_stats() is going to fix num_objects_missing
for that peer anyway, let's make sure it always starts with a
clean state.

Fixes: https://tracker.ceph.com/issues/46705
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
(cherry picked from commit 10eff2567971ca57b1e821f704de490add021c8e)

5 years agocrush/CrushWrapper: rebuild reverse maps after rebuilding crush map 36662/head
Jason Dillaman [Tue, 14 Jul 2020 22:49:30 +0000 (18:49 -0400)]
crush/CrushWrapper: rebuild reverse maps after rebuilding crush map

The Objecter will crash when localized reads are enabled and two threads
attempt to rebuild the (invalidated) reverse maps concurrently. This
should address the issue for the Objecter use-case without the need to
add additional locking.

Fixes: https://tracker.ceph.com/issues/44311
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit 8b866794f5b3674c5e3ad9adceb5e3230d55a0e0)

5 years agodoc/rbd: add note for the immutable-object-cache domain socket 36660/head
Jason Dillaman [Fri, 17 Jul 2020 14:27:14 +0000 (10:27 -0400)]
doc/rbd: add note for the immutable-object-cache domain socket

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit d44cb50670c20613c63c249595e43650ec29b13a)

5 years agocommon/options: changed default immutable object cache path
Jason Dillaman [Mon, 20 Jul 2020 16:57:57 +0000 (12:57 -0400)]
common/options: changed default immutable object cache path

Switch the default path for the immutable object cache from "/tmp" to
"/tmp/ceph_immutable_object_cache" to prevent the deletion of all
files in the "/tmp" directory and sub-directories for unconfigured
daemons.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit eeecc1860f81129347c648a6cbd4a8a78ff4c636)

5 years agoimmutable-object-cache: fix error handling during start up
Jason Dillaman [Fri, 17 Jul 2020 14:25:20 +0000 (10:25 -0400)]
immutable-object-cache: fix error handling during start up

Previously the daemon would crash if it couldn't remove all the
files from the specified cache directory. It would also crash if
it could not access its specified domain socket file.

Fixes: https://tracker.ceph.com/issues/45169
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit f6dcb6c3dbd45574e1a7ca3f5e8f1f52a0d7ae1e)

5 years agolibrbd: properly unregister failed async_complete request 36659/head
Mykola Golub [Thu, 9 Jul 2020 13:36:39 +0000 (14:36 +0100)]
librbd: properly unregister failed async_complete request

Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit 143179ffa92ce64d89fc98d6d6c9e7a3722a12f2)

5 years agolibrbd: don't resend async_complete if watcher is unregistered
Mykola Golub [Wed, 8 Jul 2020 15:04:12 +0000 (16:04 +0100)]
librbd: don't resend async_complete if watcher is unregistered

Also wait for pending async_complete after unregistering the
watcher.

Fixes: https://tracker.ceph.com/issues/45268
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit 5b6804e19a8f524ab1528a638eb286482e12fe48)

5 years agolibrbd: flush all queued object IO from simple scheduler
Jason Dillaman [Wed, 22 Jul 2020 15:25:56 +0000 (11:25 -0400)]
librbd: flush all queued object IO from simple scheduler

Normally IO is tracked via the AioCompletion's async_op but the
scheduler will "complete" writes while the IO might be still
executing. Therefore, prior to shutting down this dispatch layer
we need to wait for all IO to complete.

Fixes: https://tracker.ceph.com/issues/46668
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit 75ff8fd14dccaa7d2f11ba8a561ad3c0f410585c)

5 years agotest/rbd_mirror: fix race on test shut down 36657/head
Mykola Golub [Thu, 18 Jun 2020 13:47:59 +0000 (14:47 +0100)]
test/rbd_mirror: fix race on test shut down

in TestMockImageReplayerSnapshotReplayer.UnlinkRemoteSnapshot

Fixes: https://tracker.ceph.com/issues/46076
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit c214785fa59ace2eb68a54b4354864ff707335ca)

5 years agolibrbd: race when disabling object map with overlapping in-flight writes 36656/head
Jason Dillaman [Thu, 18 Jun 2020 19:20:40 +0000 (15:20 -0400)]
librbd: race when disabling object map with overlapping in-flight writes

The block guard that protects against overlapping updates to the object
map needs to be flushed prior to closing the object map instance.

Fixes: https://tracker.ceph.com/issues/46083
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit ee69323cd27263cb7f9dd97dcbfb1c36f1cc0837)

5 years agorgw: introduce safe user-reset-stats 36655/head
Matt Benjamin [Thu, 30 Apr 2020 22:59:11 +0000 (18:59 -0400)]
rgw: introduce safe user-reset-stats

Defines cls_user_reset_stats2, a value-returning cls operation
that sets new stats via progressive calls with an accumulator,
avoiding risk of excessive call runtime.

Fixes: https://tracker.ceph.com/issues/41080
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 25a82ed3795ecf6395e3d16fcbb4c29e478aa065)

5 years agorgw/tools: add flags to rgw_rados_operate api
Yuval Lifshitz [Thu, 21 May 2020 09:52:44 +0000 (12:52 +0300)]
rgw/tools: add flags to rgw_rados_operate api

currently flags are hardcoded to zero. this prevents some usecases, e.g.
passing OPERATION_RETURNVEC flag

Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
(cherry picked from commit 6474b77e37fd4da69b4bb5b2f171f3afa16898eb)

5 years agorgw: fix double slash (//) killing the gateway 36654/head
root [Fri, 26 Jun 2020 10:44:45 +0000 (12:44 +0200)]
rgw: fix double slash (//) killing the gateway

When a bucket is inialized as a static website, a curl request on the bucket with double slash kills the gateway.
The problem is on the URL handling of the subdirectory, which tries to remove the last slash of any URL, so when only / is given as a sub-directory, this results to an empty string.

Fixes: https://tracker.ceph.com/issues/41225
Signed-off-by: Theofilos Mouratidis <t.mour@cern.ch>
(cherry picked from commit 626330c504b1af8393986bd0553786c3031422cd)

5 years agorgw: fix shutdown crash in RGWAsyncReadMDLogEntries 36653/head
Casey Bodley [Fri, 29 May 2020 16:31:16 +0000 (12:31 -0400)]
rgw: fix shutdown crash in RGWAsyncReadMDLogEntries

RGWAsyncReadMDLogEntries must not store pointers into coroutine memory,
because it's not guaranteed to outlive our call. store these by-value
instead, and have RGWReadMDLogEntriesCR::request_complete() copy/move
them back on completion

Fixes: https://tracker.ceph.com/issues/45771
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 13bf06dbe961132ca99f470ac026674e45fecc38)

5 years agocls/rgw: preserve olh entry's name on last unlink 36652/head
Casey Bodley [Fri, 10 Jul 2020 16:38:06 +0000 (12:38 -0400)]
cls/rgw: preserve olh entry's name on last unlink

When rgw_bucket_unlink_instance removes the last instance of a name, it
also clears the value of rgw_bucket_olh_entry.key. However, bucket index
resharding uses this key when choosing its shard placement, so an empty
key causes all of these olh entries to be misplaced in shard 0. After
reshard, all of the olh recovery/cleanup logic would be sent to the
correct shard, and these misplaced olh entries would never be cleaned
up.

Preserving the key's name on last unlink allows the olh entry to be
resharded correctly and cleaned up normally.

Fixes: https://tracker.ceph.com/issues/46456
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit acf8f3cad9f55e34c703fdaef684853a3fb3b369)

5 years agoqa/tasks/ragweed: always set ragweed_repo 36651/head
Kefu Chai [Thu, 30 Jul 2020 08:45:40 +0000 (16:45 +0800)]
qa/tasks/ragweed: always set ragweed_repo

* extract get_ragweed_branch() out of download() task, for better
  readablity.
* use a loop for retry when the first clone fails
* drop the `raise ValueError()` clause as it never happens. we could use
  an assert() here, but i don't think it is necessary anyway.
* use sh() instead of run() for better readablity.
* always set ragweed_repo. before this change this variable is
  unbounded if `force-branch` is set.

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

5 years agorgw: Empty reqs_change_state queue before unregistered_reqs 36650/head
Soumya Koduri [Tue, 16 Jun 2020 12:40:08 +0000 (18:10 +0530)]
rgw: Empty reqs_change_state queue before unregistered_reqs

In RGWHTTPManager::manage_pending_request(), before unregistering
or unlinking the http requests, empty the reqs_change_state list
to avoid use after free.

Signed-off-by: Soumya Koduri <skoduri@redhat.com>
(cherry picked from commit b210437e5f28d53e770dd6938ce3c4be443da055)

5 years agorgw: abort multipart date should be round up to midnight next day like expiration one 36649/head
zhangshaowen [Thu, 7 May 2020 11:18:14 +0000 (19:18 +0800)]
rgw:  abort multipart date should be round up to midnight next day like expiration one

Signed-off-by: zhangshaowen <zhangshaowen@cmss.chinamobile.com>
(cherry picked from commit c314d322f8a0fc628f9d19b69491b54a82c069f0)

5 years agorgw: use std::optional instead of boost::optional
zhang Shaowen [Fri, 18 Oct 2019 06:25:19 +0000 (14:25 +0800)]
rgw: use std::optional instead of boost::optional

Signed-off-by: zhang Shaowen <zhangshaowen@cmss.chinamobile.com>
(cherry picked from commit 7c85903cbe4321a6a8dff5254225b33e05e3bbd5)

5 years agorgw: add abort multipart date and rule-id header to init multipart upload response.
zhang Shaowen [Tue, 8 Oct 2019 06:15:56 +0000 (14:15 +0800)]
rgw: add abort multipart date and rule-id header to init multipart upload response.

Signed-off-by: zhang Shaowen <zhangshaowen@cmss.chinamobile.com>
(cherry picked from commit 4bb2a0164be3dd69e28972bcb39f0892a4360bba)

5 years agorgw: add negative cache to the system object 36648/head
Or Friedmann [Wed, 24 Jun 2020 12:55:20 +0000 (15:55 +0300)]
rgw: add negative cache to the system object

add negative cache to the system object

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

5 years agorgw: fix boost::asio::async_write() does not return error... 36647/head
Mark Kogan [Thu, 2 Jul 2020 16:37:43 +0000 (19:37 +0300)]
rgw: fix boost::asio::async_write() does not return error...

although remote has closed the connection

Fixes: https://tracker.ceph.com/issues/46332
Signed-off-by: Mark Kogan <mkogan@redhat.com>
(cherry picked from commit c997eb6ad77deebd8e903fe84da7af6fcf50d528)

5 years agorgw: fix nginx-rgw docs 36646/head
ofriedma [Wed, 20 May 2020 16:07:03 +0000 (19:07 +0300)]
rgw: fix nginx-rgw docs

Signed-off-by: Or Friedmann <ofriedma@redhat.com>
Signed-off-by: Mark Kogan <mkogan@redhat.com>
(cherry picked from commit d73b879ac169c46f2dfeba0f4ca7f3a8af272a53)

5 years agorgw: create rgw-cache example directory
Or Friedmann [Mon, 18 May 2020 15:15:25 +0000 (18:15 +0300)]
rgw: create rgw-cache example directory

Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit 94c81f3094222d49a9c12d088667f58926b1cbf5)

5 years agorgw: fix nginx cache docs
Or Friedmann [Sun, 17 May 2020 13:46:12 +0000 (16:46 +0300)]
rgw: fix nginx cache docs

Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit 892e9fa5fe2a8759da50e62d48632dff6ad81c30)

5 years agouse ceph::split
Or Friedmann [Wed, 13 May 2020 10:04:41 +0000 (13:04 +0300)]
use ceph::split

Signed-off-by: Or Friedmann <orfriedma@redhat.com>
(cherry picked from commit 737e1aa95686d8c4a429cac9ea5f388bcda04bac)

5 years agorgw: fixes to override_range_hdr
Or Friedmann [Tue, 12 May 2020 15:20:34 +0000 (18:20 +0300)]
rgw: fixes to override_range_hdr

Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit e6e1dd868140e7ed356e007d4bf95a5bd2415035)

5 years agofix docs
Or Friedmann [Tue, 12 May 2020 08:10:34 +0000 (11:10 +0300)]
fix docs

Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit a4ae27242a2426cefd602ba053ae565e3c96ff0b)

5 years agorgw: Adding data cache and CDN capabilities
Or Friedmann [Mon, 3 Feb 2020 10:36:10 +0000 (12:36 +0200)]
rgw: Adding data cache and CDN capabilities

This feature is meant to add data cache feature to the RGW.
It is using Nginx as a cache server.
This feature adds 2 new apis, Auth api and Cache api.

Some Performance tests using hsbench:
16K objs:

RGW direct access:
Mode: GET, Ops: 3001, MB/s: 46.89, Lat(ms): [ min: 30.4, avg: 33.2, 99%: 34.7, max: 35.2 ]
Nginx access (objs have not been cached)
Mode: GET, Ops: 1363, MB/s: 21.30, Lat(ms): [ min: 63.8, avg: 73.8, 99%: 78.1, max: 86.6 ]
Nginx access (objs have been cached)
Mode: GET, Ops: 2446, MB/s: 38.22, Lat(ms): [ min: 36.9, avg: 41.0, 99%: 43.9, max: 45.9 ]

512K objs:
RGW direct access:
Mode: GET, Ops: 1492, MB/s: 746.00 Lat(ms): [ min: 60.4, avg: 66.7, 99%: 73.5, max: 75.9 ]

Nginx access (objs have not been cached)
Mode: GET, Ops: 1382, MB/s: 691.00, Lat(ms): [ min: 64.5, avg: 72.1, 99%: 77.9, max: 82.8 ]

Nginx access (objs have been cached)
Mode: GET, Ops: 2947, MB/s: 1473.50, Lat(ms): [ min: 3.3, avg: 32.7, 99%: 62.2, max: 72.1 ]

2M objs:
RGW direct access:
Mode: GET, Ops: 613, MB/s: 1226.00, Lat(ms): [ min: 143.6, avg: 162.0, 99%: 180.2, max: 190.1 ]

Nginx access (objs have not been cached)
Mode: GET, Ops: 462, MB/s: 924.00, Lat(ms): [ min: 180.2, avg: 215.0, 99%: 243.2, max: 248.3 ]

Nginx access (objs have been cached)
Mode: GET, Ops: 1392, MB/s: 2784.00, Lat(ms): [ min: 3.0, avg: 5.3, 99%: 18.8, max: 30.2 ]

10M objs:
RGW direct access:
Mode: GET, Ops: 135, MB/s: 1350.00, Lat(ms): [ min: 191.1, avg: 265.8, 99%: 373.1, max: 382.8 ]

Nginx access (objs have not been cached)
Mode: GET, Ops: 120, MB/s: 1200.00, Lat(ms): [ min: 302.1, avg: 428.8, 99%: 561.2, max: 583.7 ]

Nginx access (objs have been cached)
Mode: GET, Ops: 281, MB/s: 2810.00, Lat(ms): [ min: 3.2, avg: 8.3, 99%: 16.9, max: 25.6 ]

gdal_translate 4GiB image gdal_translate -co NUM_THREADS=ALL_CPUS /vsis3/hello/sat.tif

Nginx (have not cached):
real 0m24.714s
user 0m8.692s
sys 0m10.360s

Nginx (have been cached):
real 0m21.070s
user 0m9.140s
sys 0m10.316s

RGW:
real 0m21.859s
user 0m8.850s
sys 0m10.386s

The results are showing that for objects larger than 512K the cache will increase the performance by twice or more.

For small objs, the overhead of sending the auth request will make the cache less efficient

The result for cached objects in the 10MB test can be explained by net limit of 25 Gb/s(it could reach more)

In Gdal (image decoder/encoder over s3 using range requests) the results were not that different because of Gdal single cpu encoding/decoding.
Gdal have been chosen because of the ability to check the smart cache of the nginx.
https://www.nginx.com/blog/smart-efficient-byte-range-caching-nginx/

Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit 1bcd212fd260e8436a2fe8858068c3613b30caed)

5 years agorgw/iam: correcting the result of get role policy. 36645/head
Pritha Srivastava [Fri, 5 Jun 2020 04:00:49 +0000 (09:30 +0530)]
rgw/iam: correcting the result of get role policy.

Fixes: https://tracker.ceph.com/issues/45671
Signed-off-by: Pritha Srivastava <prsrivas@redhat.com>
(cherry picked from commit 9e1ae9de9905587a227e50d0aff6533e290a8f87)

5 years agolibrados: add LIBRADOS_SUPPORTS_GETADDRS support 36643/head
Xiubo Li [Thu, 6 Aug 2020 03:56:26 +0000 (11:56 +0800)]
librados: add LIBRADOS_SUPPORTS_GETADDRS support

This will be very helpful when release ceph package(like RPM) with
backporting rados_getaddrs() api to previous version.

In tcmu-runner we need to check whether the rados_getaddrs() is
support or not.

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

5 years agolibrbd: update hidden global config when setting pool config override 36638/head
Jason Dillaman [Tue, 28 Jul 2020 01:14:18 +0000 (21:14 -0400)]
librbd: update hidden global config when setting pool config override

The new "dev"-level global config setting will be updated when any
pool-level config override is updated. librbd clients will detect
the new global-level config update and trigger a refresh. This avoids
the need for potentially tens of thousands of librbd clients
registering a watch on the pool metadata object or periodically polling
the pool metadata object for updates.

Fixes: https://tracker.ceph.com/issues/46694
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit f45df9fe786e8057c491c082e840483759d67e9e)

Conflicts:
src/common/options.cc
- "rbd_quiesce_notification_attempts", "rbd_default_snapshot_quiesce_mode", and
  "rbd_plugins" options have not been backported to Octopus, yet

5 years agolibrbd: initialize/shut down config watcher during image open/close
Jason Dillaman [Mon, 27 Jul 2020 20:29:05 +0000 (16:29 -0400)]
librbd: initialize/shut down config watcher during image open/close

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit ea6c9bde0437cc163a0f6a52b3ef1f45eaa6f88b)

Conflicts:
src/librbd/ImageCtx.h
- AsioEngine has not been backported yet

5 years agolibrbd: initial config watcher implementation
Jason Dillaman [Mon, 27 Jul 2020 19:31:09 +0000 (15:31 -0400)]
librbd: initial config watcher implementation

The config watcher will initially observe all "rbd_" configuration
updates received from the MON that have not been locally overridden
at the pool and/or image level.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit 54819a1aa95fe1be8b8ef44f8417e3fe82d9ec89)

Conflicts:
src/test/librbd/mock/MockImageState.h
- once again, I don't see why git flagged this as a conflict

5 years agolibrbd: hold ImageCtx::image_lock while computing config overrides
Jason Dillaman [Mon, 27 Jul 2020 18:36:49 +0000 (14:36 -0400)]
librbd: hold ImageCtx::image_lock while computing config overrides

The 'ImageCtx::apply_metadata' is guaranteed to be thread-safe but
a future commit will attempt to utilize the cached config override
set.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit c7104d18e190f3718ec1625376f8c63676096efa)

5 years agorgw: policy: reuse eval_principal to evaluate the policy principal 36636/head
Abhishek Lekshmanan [Mon, 27 Jul 2020 14:58:30 +0000 (16:58 +0200)]
rgw: policy: reuse eval_principal to evaluate the policy principal

Since the other edge case when no Principal or a NotPrincipal is supplied also
must be accounted for, which is already done in eval_principal function. Also
reraising the error as Effect::Pass in line with the previous output, though an
Effect::Deny would also work here.

Fixes: https://tracker.ceph.com/issues/46078
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 1843f2dca853f97c6c9b4196eaf27581705be0e2)

5 years agomonclient: use "is_connected" check when scheduling tick 36633/head
Mykola Golub [Thu, 30 Jul 2020 05:59:57 +0000 (06:59 +0100)]
monclient: use "is_connected" check when scheduling tick

When schedule_tick is called for the first time (in init) we are
still not in hunting mode so mon_client_ping_interval and
mon_client_log_interval were used to schedule the tick.

Fixes: https://tracker.ceph.com/issues/46445
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit d86b389a51e870c1aa5182a93095f5efb12e41e4)

5 years agomgr/mgr_module: metadata is fetched async 36630/head
Michael Fritch [Thu, 25 Jun 2020 20:36:22 +0000 (14:36 -0600)]
mgr/mgr_module: metadata is fetched async

fetch metadata using a defaultdict

Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit f06e60b591d7921b0afdd40219f3866773b00683)

5 years agomgr/status: metadata is fetched async
Michael Fritch [Thu, 25 Jun 2020 20:16:55 +0000 (14:16 -0600)]
mgr/status: metadata is fetched async

fix timing window during mds rejoin where metadata is not available

Fixes: https://tracker.ceph.com/issues/45633
Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit 4006fff43856c851e7a07f7d8ff05364cbe03529)

5 years agoMerge pull request #36327 from kotreshhr/fs-volumes-misc-octopus
Yuri Weinstein [Thu, 13 Aug 2020 18:38:24 +0000 (11:38 -0700)]
Merge pull request #36327 from kotreshhr/fs-volumes-misc-octopus

octopus: mgr/fs/volumes: misc fixes

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge pull request #36299 from smithfarm/wip-46712-octopus
Yuri Weinstein [Thu, 13 Aug 2020 18:37:55 +0000 (11:37 -0700)]
Merge pull request #36299 from smithfarm/wip-46712-octopus

octopus: mgr/nfs: Check if pseudo path is absolute path

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Varsha Rao <varao@redhat.com>
5 years agoMerge pull request #36220 from smithfarm/wip-46632-octopus
Yuri Weinstein [Thu, 13 Aug 2020 18:37:20 +0000 (11:37 -0700)]
Merge pull request #36220 from smithfarm/wip-46632-octopus

octopus: mgr/volumes: fix "ceph nfs export" help messages

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Varsha Rao <varao@redhat.com>
5 years agoMerge pull request #36346 from s0nea/wip-46753-octopus
Lenz Grimmer [Thu, 13 Aug 2020 14:36:55 +0000 (16:36 +0200)]
Merge pull request #36346 from s0nea/wip-46753-octopus

octopus: mgr/dashboard: wait longer for health status to be cleared

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/dashboard: Unable to edit iSCSI logged-in client 36611/head
Ricardo Marques [Mon, 3 Aug 2020 15:38:10 +0000 (16:38 +0100)]
mgr/dashboard: Unable to edit iSCSI logged-in client

Fixes: https://tracker.ceph.com/issues/46818
Signed-off-by: Ricardo Marques <rimarques@suse.com>
(cherry picked from commit 7ee7fb98d343f6c6c44cac60ce6ca5ab8aeb9021)

5 years agoMerge pull request #36588 from jan--f/wip-46911-octopus
Jan Fajerski [Thu, 13 Aug 2020 08:47:19 +0000 (10:47 +0200)]
Merge pull request #36588 from jan--f/wip-46911-octopus

octopus: ceph-volume: run flake8 in python3

5 years agoMerge pull request #35925 from smithfarm/wip-45889-octopus
Lenz Grimmer [Wed, 12 Aug 2020 16:11:02 +0000 (18:11 +0200)]
Merge pull request #35925 from smithfarm/wip-45889-octopus

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
5 years agoMerge pull request #36563 from s0nea/wip-46896-octopus
Lenz Grimmer [Wed, 12 Aug 2020 16:09:17 +0000 (18:09 +0200)]
Merge pull request #36563 from s0nea/wip-46896-octopus

octopus: mgr/dashboard: fix tasks.mgr.dashboard.test_rbd.RbdTest.test_move_image_to_trash error

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>