]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
2 years agorbd-mirror: skip setting error code on snapshot replayer shutdown 47914/head
Ilya Dryomov [Tue, 30 Aug 2022 09:45:44 +0000 (11:45 +0200)]
rbd-mirror: skip setting error code on snapshot replayer shutdown

This is regarding failures in unregister_remote_update_watcher() and
unregister_local_update_watcher().  handle_replay_complete() can't be
called in these cases anymore as it would blindly attempt to unregister
watchers from scratch again.  Dropping handle_replay_complete() calls
there means that these failures would only be logged and would not be
surfaced by snapshot replayer.  But the only caller ignores them
anyway:

  void ImageReplayer<I>::shut_down(int r) {
    ...
    // close the replayer
    if (m_replayer != nullptr) {
      ctx = new LambdaContext([this, ctx](int r) {
        m_replayer->destroy();
        m_replayer = nullptr;
        ctx->complete(0);             <------
      });
      ctx = new LambdaContext([this, ctx](int r) {
        m_replayer->shut_down(ctx);
      });
    }

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit ced071f0de57af8cddffebca24baeb27f2a211d8)

2 years agorbd-mirror: resume pending shutdown on error in snapshot replayer
Ilya Dryomov [Wed, 24 Aug 2022 10:56:31 +0000 (12:56 +0200)]
rbd-mirror: resume pending shutdown on error in snapshot replayer

If a shutdown is requested, e.g. by update_pool_replayers() because
remote RADOS instance got blocklisted, and Replayer::shut_down() pends
it on completion of current snapshot sync, it gets stuck if replayer
encounters an error in the interim.  This is particularly likely in the
blocklist case: a higher layer may detect that client got blocklisted
and request a shutdown first, and then when replayer sees EBLOCKLISTED
in turn, it calls handle_replay_complete() -- which does not resume
a pending shutdown.  Because update_pool_replayers() blocks on shutdown
with Mirror::m_lock held, eventually the entire daemon hangs in
perpetuity.

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

2 years agoMerge pull request #47892 from rhcs-dashboard/value-error-quincy
Nizamudeen A [Thu, 1 Sep 2022 17:29:07 +0000 (22:59 +0530)]
Merge pull request #47892 from rhcs-dashboard/value-error-quincy

quincy: install-deps: script exit on /ValueError: in centos_stream8

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2 years agoMerge pull request #47887 from rhcs-dashboard/wip-57356-quincy
Nizamudeen A [Thu, 1 Sep 2022 06:23:11 +0000 (11:53 +0530)]
Merge pull request #47887 from rhcs-dashboard/wip-57356-quincy

quincy: mgr/dashboard: ensure limit 0 returns 0 images

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2 years agoMerge pull request #47409 from rhcs-dashboard/wip-56567-quincy
Nizamudeen A [Thu, 1 Sep 2022 06:21:56 +0000 (11:51 +0530)]
Merge pull request #47409 from rhcs-dashboard/wip-56567-quincy

quincy: mgr/dashboard: rbd striping setting pre-population and pop-over

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: vrushch <NOT@FOUND>
2 years agoinstall-deps: script exit on /ValueError: in centos_stream8 47892/head
Nizamudeen A [Tue, 16 Aug 2022 15:39:25 +0000 (21:09 +0530)]
install-deps: script exit on /ValueError: in centos_stream8

this is happening locally as well as in our ceph-dev runs too https://github.com/rhcs-dashboard/ceph-dev/runs/7850564011

Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit b73d7d22d4dad5188d06fdec4892148af0757dc5)

2 years agomgr/dashboard: ensure limit 0 returns 0 images 47887/head
Pere Diaz Bou [Thu, 18 Aug 2022 11:34:15 +0000 (13:34 +0200)]
mgr/dashboard: ensure limit 0 returns 0 images

Signed-off-by: Pere Diaz Bou <pdiazbou@redhat.com>
(cherry picked from commit a80c058ad21127bee09b4a67886745d880799a10)

2 years agoMerge pull request #47747 from kotreshhr/wip-57112-quincy
Yuri Weinstein [Wed, 31 Aug 2022 14:28:49 +0000 (07:28 -0700)]
Merge pull request #47747 from kotreshhr/wip-57112-quincy

quincy: mgr/volumes: prevent intermittent ParsingError failure in "clone cancel"

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #47734 from neesingh-rh/wip-57200-quincy
Yuri Weinstein [Wed, 31 Aug 2022 14:27:57 +0000 (07:27 -0700)]
Merge pull request #47734 from neesingh-rh/wip-57200-quincy

quincy: mgr/snap_schedule: replace .snap with the client configured snap dir name

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Kotresh HR khiremat@redhat.com
2 years agoMerge pull request #47858 from adk3798/quincy-fix-tox-mgr
Adam King [Tue, 30 Aug 2022 13:04:15 +0000 (09:04 -0400)]
Merge pull request #47858 from adk3798/quincy-fix-tox-mgr

quincy: mgr/orchestrator/tests: don't match exact whitespace in table output

Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Redouane Kachach <rkachach@redhat.com>
2 years agoMerge pull request #47623 from aaSharma14/wip-57137-quincy
Nizamudeen A [Tue, 30 Aug 2022 11:05:05 +0000 (16:35 +0530)]
Merge pull request #47623 from aaSharma14/wip-57137-quincy

 quincy: mgr/dashboard: add flag to automatically deploy loki/promtail service at bootstrap

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2 years agoMerge pull request #47635 from rhcs-dashboard/wip-57142-quincy
Pere Diaz Bou [Tue, 30 Aug 2022 09:45:31 +0000 (11:45 +0200)]
Merge pull request #47635 from rhcs-dashboard/wip-57142-quincy

quincy: mgr/dashboard: fix _rbd_image_refs caching

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2 years agoMerge pull request #47724 from rhcs-dashboard/wip-57216-quincy
Nizamudeen A [Tue, 30 Aug 2022 06:46:05 +0000 (12:16 +0530)]
Merge pull request #47724 from rhcs-dashboard/wip-57216-quincy

quincy: mgr/dashboard: Hide maintenance option on expand cluster

Reviewed-by: Pegonzal <NOT@FOUND>
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
2 years agomgr/orchestrator/tests: don't match exact whitespace in table output 47858/head
Adam King [Thu, 25 Aug 2022 16:09:49 +0000 (12:09 -0400)]
mgr/orchestrator/tests: don't match exact whitespace in table output

It seems that the exact spacing may differ a bit between
python versions. Currently seeing py3 (which cooresponds to py 3.6
on my system) passing these tests and py37 (which is python 3.7
obviously) failing. I think verifying against the exact whitespace
is unnecessary anyhow. As long as it isn't egregious, we don't
really need to worry about exactly what the spacing is.

Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit f64bf0e804598866fa82203da146c07e87bd50f6)

2 years agoMerge pull request #46948 from lxbsz/wip-56055
Yuri Weinstein [Mon, 29 Aug 2022 15:13:35 +0000 (08:13 -0700)]
Merge pull request #46948 from lxbsz/wip-56055

quincy: ceph-fuse: add dedicated snap stag map for each directory

Reviewed-by: Kotresh HR khiremat@redhat.com
2 years agoMerge pull request #47683 from batrick/i57184
Yuri Weinstein [Mon, 29 Aug 2022 14:50:36 +0000 (07:50 -0700)]
Merge pull request #47683 from batrick/i57184

quincy: crash: pthread_mutex_lock()

Reviewed-by: Laura Flores <lflores@redhat.com>
2 years agoMerge pull request #46214 from rzarzynski/wip-common-dout-gcc12-ftbfs-quincy
Yuri Weinstein [Mon, 29 Aug 2022 14:48:25 +0000 (07:48 -0700)]
Merge pull request #46214 from rzarzynski/wip-common-dout-gcc12-ftbfs-quincy

quincy: common: fix FTBFS due to dout & need_dynamic on GCC-12

Reviewed-by: Kefu Chai <kchai@redhat.com>
2 years agoMerge pull request #47837 from zdover23/wip-doc-2022-08-28-backport-47736-to-quincy
zdover23 [Sun, 28 Aug 2022 21:38:00 +0000 (07:38 +1000)]
Merge pull request #47837 from zdover23/wip-doc-2022-08-28-backport-47736-to-quincy

quincy: doc: Update release process doc to accurately reflect current process

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2 years agodoc: Update release process doc to accurately reflect current process 47837/head
David Galloway [Mon, 22 Aug 2022 20:12:36 +0000 (16:12 -0400)]
doc: Update release process doc to accurately reflect current process

Signed-off-by: David Galloway <dgallowa@redhat.com>
(cherry picked from commit 4829af891ce9fbe41f4b48b10d342e774366dd52)

2 years agoMerge pull request #47688 from rzarzynski/wip-dup-trimming-test2-quincy
Laura Flores [Fri, 26 Aug 2022 23:05:05 +0000 (18:05 -0500)]
Merge pull request #47688 from rzarzynski/wip-dup-trimming-test2-quincy

quincy: osd, tools, kv: non-aggressive, on-line trimming of accumulated dups

2 years agoMerge pull request #47432 from lxbsz/wip-56461
Yuri Weinstein [Thu, 25 Aug 2022 20:31:55 +0000 (13:31 -0700)]
Merge pull request #47432 from lxbsz/wip-56461

quincy: mds: skip fetching the dirfrags if not a directory

Reviewed-by: Kotresh HR khiremat@redhat.com
2 years agoMerge pull request #47058 from lxbsz/wip-56464
Yuri Weinstein [Thu, 25 Aug 2022 20:29:46 +0000 (13:29 -0700)]
Merge pull request #47058 from lxbsz/wip-56464

quincy: mds: switch to use projected inode instead

Reviewed-by: Kotresh HR khiremat@redhat.com
2 years agoMerge pull request #47806 from adk3798/quincy-rgw-bad-example
Adam King [Thu, 25 Aug 2022 16:30:11 +0000 (12:30 -0400)]
Merge pull request #47806 from adk3798/quincy-rgw-bad-example

quincy: doc/cephadm: fix example for specifying networks for rgw

Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
2 years agoMerge pull request #47181 from lxbsz/wip-55928
Yuri Weinstein [Thu, 25 Aug 2022 15:16:45 +0000 (08:16 -0700)]
Merge pull request #47181 from lxbsz/wip-55928

quincy: mds: fix crash when exporting unlinked dir

Reviewed-by: Kotresh HR <khiremat@redhat.com>
2 years agoMerge pull request #47511 from nmshelke/wip-57057-quincy
Yuri Weinstein [Thu, 25 Aug 2022 15:14:05 +0000 (08:14 -0700)]
Merge pull request #47511 from nmshelke/wip-57057-quincy

quincy: mgr/volumes: filter internal directories in 'subvolumegroup ls' command

Reviewed-by: Kotresh HR <khiremat@redhat.com>
2 years agoMerge pull request #47584 from idryomov/wip-57107-quincy
Yuri Weinstein [Thu, 25 Aug 2022 15:12:56 +0000 (08:12 -0700)]
Merge pull request #47584 from idryomov/wip-57107-quincy

quincy: rbd: find_action() should sort actions first

Reviewed-by: Mykola Golub <mgolub@suse.com>
2 years agodoc/cephadm: fix example for specifying networks for rgw 47806/head
Adam King [Wed, 24 Aug 2022 14:36:53 +0000 (10:36 -0400)]
doc/cephadm: fix example for specifying networks for rgw

count_per_host must be used with underscores rather
than dashes to work, you need to pass service_id not
service_name and the option for the port is called
rgw_frontend_port not just "port"

Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit 6b6f56a5b623f68d59af8902eae5e1157f47e382)

2 years agoMerge pull request #47780 from zdover23/wip-doc-2022-08-24-backport-47751-to-quincy
zdover23 [Thu, 25 Aug 2022 12:48:34 +0000 (22:48 +1000)]
Merge pull request #47780 from zdover23/wip-doc-2022-08-24-backport-47751-to-quincy

quincy: doc/mgr: edit orchestrator.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2 years agoMerge pull request #47789 from zdover23/wip-doc-2022-08-25-backport-47785-quincy
zdover23 [Thu, 25 Aug 2022 05:51:18 +0000 (15:51 +1000)]
Merge pull request #47789 from zdover23/wip-doc-2022-08-25-backport-47785-quincy

quincy: docs: fix doc link pointing to master in dashboard.rst

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2 years agodocs: fix doc link pointing to master in dashboard.rst 47789/head
Nizamudeen A [Wed, 24 Aug 2022 10:41:00 +0000 (16:11 +0530)]
docs: fix doc link pointing to master in dashboard.rst

Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit 79bbaa555307639cd10819c35c0d0c2f4cd7f0fd)

3 years agoMerge pull request #47739 from ceph/quincy-rtd3
Ilya Dryomov [Wed, 24 Aug 2022 09:03:00 +0000 (11:03 +0200)]
Merge pull request #47739 from ceph/quincy-rtd3

quincy: admin: Fix check if PR or release branch docs build

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agodoc/mgr: edit orchestrator.rst 47780/head
Zac Dover [Tue, 23 Aug 2022 06:59:04 +0000 (16:59 +1000)]
doc/mgr: edit orchestrator.rst

This PR improves the English language in the "Orchestrator CLI"
section of the MGR documentation. It adds a couple of section
headers in order to signpost the information in the document
a bit more than had already been done, but it makes no major
structural changes to the presentation of the information here.

This PR was motivated by feedback from the 2022 Ceph User Survey
in which one of the respondents wrote "better ceph orch documen-
tation".

The final section on this page, "Current Implementation Status",
must be verified by someone who is familiar with the current state
of "ceph orch" and a date stamp should be applied to the top of
the section so that the word "current" has a meaningful referent.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
(cherry picked from commit 2172b7ec98bacc183b0e3a22d95dc8ad80af5a8a)

3 years agoMerge pull request #47703 from rhcs-dashboard/wip-55467-quincy
Nizamudeen A [Tue, 23 Aug 2022 07:04:05 +0000 (12:34 +0530)]
Merge pull request #47703 from rhcs-dashboard/wip-55467-quincy

quincy: mgr/dashboard: grafana frontend e2e testing and update cypress

Reviewed-by: Pegonzal <NOT@FOUND>
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
3 years agofuse_ll: fix compile error when libfuse version is larger than 3.0 46948/head
Xiubo Li [Sat, 9 Jul 2022 00:48:40 +0000 (08:48 +0800)]
fuse_ll: fix compile error when libfuse version is larger than 3.0

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

3 years agoceph-fuse: add dedicated snap stag map for each directory
Xiubo Li [Wed, 6 Apr 2022 00:12:26 +0000 (08:12 +0800)]
ceph-fuse: add dedicated snap stag map for each directory

This will fix the fino colliding bug, which is caused when the
snapid is later than 0xffff.

From mds 'mds_max_snaps_per_dir' option, we can see that the max
snapshots for each directory is 4_K, and in ceph-fuse we have
around 64_K, which is from 0xffff - 2, stags could be used to make
the fake fuse inode numbers for each directory.

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

3 years agoceph-fuse: return EINVAL if get invalid fino instead of assert
Xiubo Li [Thu, 24 Mar 2022 02:01:57 +0000 (10:01 +0800)]
ceph-fuse: return EINVAL if get invalid fino instead of assert

All the snap ids of the finos returned to libfuse from libcephfs
will be recorded in the map of 'stag_snap_map', and will never be
erased before unmounting. So if libfuse passes invalid fino the
ceph-fuse should return EINVAL errno instead of crash itself.

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

3 years agoceph-fuse: reserve stag number 1 for snapdirs
Xiubo Li [Wed, 23 Mar 2022 06:30:07 +0000 (14:30 +0800)]
ceph-fuse: reserve stag number 1 for snapdirs

There have two stags will be reserved, 0 for CEPH_NOSNAP and 1 for
CPEH_SNAPDIR.

This will always make sure that for the nonsnap and snapdir inode
numbers to be consistent for all the ceph-fuse mounts.

Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 2349083a9d3f503dbe48fb1bdc3a88c881ed11a9)

3 years agomds-client: make the fake inos option unchangeable in runtime
Xiubo Li [Wed, 23 Mar 2022 02:05:32 +0000 (10:05 +0800)]
mds-client: make the fake inos option unchangeable in runtime

If the flags is empty then in option.h in can_update_at_runtime()
it will return true. That means this opetion could be changed in
runtime, which is buggy. Because if this is false, ceph-fuse will
use its own fake inos instead of libcephfs'. If this is changed
during runtime, we will hit inos dosn't exist assert bugs.

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

3 years agomgr/volumes: drop pre-python 3.2 version checks 47747/head
John Mulligan [Tue, 2 Aug 2022 13:45:59 +0000 (09:45 -0400)]
mgr/volumes: drop pre-python 3.2 version checks

Based on other conversations we believe that there is no need to support
python versions lower than Python 3.6 for pacific and later.  This means
it is safe to drop the remaining version checks for python
3.2.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
(cherry picked from commit 47162e4996a511d399809516a4890d72e6f84a44)

3 years agomgr/volumes: a lock to guard against races reading/writing config
John Mulligan [Mon, 11 Jul 2022 20:44:00 +0000 (16:44 -0400)]
mgr/volumes: a lock to guard against races reading/writing config

Fixes: https://tracker.ceph.com/issues/55583
Use a python threading lock to avoid race conditions where the
config file is being both read and written to at the same time.

Before this change, the content of the config file being parsed could be
'corrupted' by the MetadataManager racing with itself.  Along with the
previous two patches, additional logging was added to the mgr code to
produce the simplified version of the mgr log below:

```
[volumes INFO volumes.fs.operations.versions.metadata_manager] READ: b'[GLOBAL]\nversion = 2\ntype = clone\npath = /volumes/Park/babydino2/c9f773af-5221-49c6-846c-d65c0920ae3f\nstate = pending\n\n[source]\nvolume = cephfs\ngroup = Park\nsubvolume = Jurrasic\nsnapshot = dinodna0\n\n'
[volumes INFO volumes.fs.operations.versions.metadata_manager] READ: b''
[volumes INFO volumes.fs.operations.versions.metadata_manager] READ: b'[GLOBAL]\nversion = 2\ntype = clone\npath = /volumes/Park/babydino2/c9f773af-5221-49c6-846c-d65c0920ae3f\nstate = pending\n\n[source]\nvolume = cephfs\ngroup = Park\nsubvolume = Jurrasic\nsnapshot = dinodna0\n\n'
[volumes INFO volumes.fs.operations.versions.metadata_manager] wrote 203 bytes to config b'/volumes/Park/babydino2/.meta'
[volumes INFO volumes.fs.operations.versions.metadata_manager] READ: b'a0\n\n'
[volumes INFO volumes.fs.operations.versions.metadata_manager] READ: b''
[volumes ERROR volumes.module] Failed _cmd_fs_clone_cancel(clone_name:babydino2, format:json, group_name:Park, prefix:fs clone cancel, vol_name:cephfs) < "":
Traceback (most recent call last):
  ...
  File "/usr/lib64/python3.6/configparser.py", line 1111, in _read
    raise e
configparser.ParsingError: Source contains parsing errors: b'/volumes/Park/babydino2/.meta'
[line 13]: 'a0\n'
```

Looking at the above you can see that the log indicates a write to the
config file (of 203 bytes). This happens before the file has finished
reading and thus instead of getting an empty string indicating EOF, it
gets that last four bytes of the new content of the file. The lock
prevents the MetadataManager from both reading and writing the config
file at the same time.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
(cherry picked from commit 2fe83d72d94d1e0939d390554a833cd93b4dd965)

3 years agomgr/volumes: write volume metadata with shim class
John Mulligan [Tue, 12 Jul 2022 22:33:07 +0000 (18:33 -0400)]
mgr/volumes: write volume metadata with shim class

Add a class that works a bit like a python file object so that we
can simplify the flush function. Providing a file-like object to
the ConfigParser's write function avoids unnecessary copies to
a StringIO object and makes the code easier to read.

With no more uses of StringIO, the StringIO imports are removed.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
(cherry picked from commit d06d8a1f5255b5da9106cd70acc0de99f89d2b96)

3 years agomgr/volumes: read volume metadata file using read_string
John Mulligan [Tue, 12 Jul 2022 22:32:54 +0000 (18:32 -0400)]
mgr/volumes: read volume metadata file using read_string

The read_string method, available in Python 3.2 (we assume Python 3.6 as
our current minimum python versino), supports parsing a provided string
for ini-style configuration parameters. Refactoring the reading of the
config file from cephfs into a simple iterator function and then
providing it to the ConfigParser as a single string, allows us to avoid
using StringIO and  simplifies the refresh function.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
(cherry picked from commit dc1b4aac90beb82fd994ad7fa8ccf3b72b9936ac)

3 years agoMerge pull request #47519 from kamoltat/wip-ksirivad-backport-quincy-46242
Yuri Weinstein [Mon, 22 Aug 2022 20:47:54 +0000 (13:47 -0700)]
Merge pull request #47519 from kamoltat/wip-ksirivad-backport-quincy-46242

quincy:pybind/mgr/pg_autoscaler: change overlapping roots to warning

Reviewed-by: Laura Flores <lflores@redhat.com>
3 years agoMerge pull request #47493 from petrutlucian94/wip-57054-quincy
Yuri Weinstein [Mon, 22 Aug 2022 20:47:02 +0000 (13:47 -0700)]
Merge pull request #47493 from petrutlucian94/wip-57054-quincy

quincy: common: use boost::shared_mutex on Windows

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
3 years agoMerge pull request #47171 from adk3798/quincy-loki-support
Yuri Weinstein [Mon, 22 Aug 2022 20:45:56 +0000 (13:45 -0700)]
Merge pull request #47171 from adk3798/quincy-loki-support

quincy: mgr/cephadm: fix the loki address in grafana, promtail configuration files

Reviewed-by: Teoman Onay <tonay@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Reviewed-by: Redouane Kachach <rkachach@redhat.com>
3 years agoMerge pull request #47110 from kotreshhr/wip-56526-quincy
Yuri Weinstein [Mon, 22 Aug 2022 20:42:14 +0000 (13:42 -0700)]
Merge pull request #47110 from kotreshhr/wip-56526-quincy

quincy: mds: Don't blocklist clients in any replay state

Reviewed-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Nikhilkumar Shelke <nshelke@redhat.com>
3 years agoadmin: Fix check if PR or release branch docs build 47739/head
David Galloway [Mon, 22 Aug 2022 20:29:01 +0000 (16:29 -0400)]
admin: Fix check if PR or release branch docs build

Uses built-in RTD vars.  https://docs.readthedocs.io/en/stable/environment-variables.html.

Follow up to https://github.com/ceph/ceph/pull/46917#discussion_r942359130.

Signed-off-by: David Galloway <dgallowa@redhat.com>
(cherry picked from commit f92133ca527b5608b7ba8b79396568b03fa686b3)

3 years agomgr/snap_schedule: add time zone suffix to snapshot dir name 47734/head
Milind Changire [Sat, 9 Apr 2022 03:03:22 +0000 (08:33 +0530)]
mgr/snap_schedule: add time zone suffix to snapshot dir name

Fixes: https://tracker.ceph.com/issues/54374
Signed-off-by: Milind Changire <mchangir@redhat.com>
Signed-off-by: Venky Shankar <vshankar@redhat.com>
(cherry picked from commit 24c13e53dec46656ab92b6c30f5c20eb81a1c11f)

3 years agomgr/dashboard: update cypress to 9.7.0 47703/head
Nizamudeen A [Mon, 27 Jun 2022 11:58:14 +0000 (17:28 +0530)]
mgr/dashboard: update cypress to 9.7.0

Fixes: https://tracker.ceph.com/issues/56426
Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit 4e17dd149cc272e670a2ff745a2bb976b361b6f5)

3 years agomgr/dashboard: prometheus rules internal server error
Nizamudeen A [Tue, 26 Apr 2022 10:19:09 +0000 (15:49 +0530)]
mgr/dashboard: prometheus rules internal server error

After we increase/decrease the count of the node-exporter, we get a 500
- Internal server error from api/prometheus/rules endpoint. On further
  debugging its caused by the jsonDecodder, because I guess the expected
input for the json.loads() is not a json formatted input. So to fix
that issue I can either do an error handling on the json.loads() or I
can move the json.loads() on the already existing try block. I went for
the second approach here.

Fixes: https://tracker.ceph.com/issues/54356
Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit 672e27cbd2d66f87afa5e9e33537f333eadfb243)

3 years agoqa: filter internal directories in 'subvolumegroup ls' command 47511/head
Nikhilkumar Shelke [Fri, 1 Jul 2022 12:13:40 +0000 (17:43 +0530)]
qa: filter internal directories in 'subvolumegroup ls' command

Internal directories: '_nogroup', '_index', '_legacy', '_deleting'
1. Internal directories should be filtered in 'subvolmegroup ls' command.
2. Internal directories should not be accepted as a group name.

Fixes: https://tracker.ceph.com/issues/55762
Signed-off-by: Nikhilkumar Shelke <nshelke@redhat.com>
(cherry picked from commit 7b585d4db921112edeea3c879cb8bca0200c1b71)

3 years agomgr/volumes: filter internal directories in 'subvolumegroup ls' command
Nikhilkumar Shelke [Wed, 22 Jun 2022 09:55:23 +0000 (15:25 +0530)]
mgr/volumes: filter internal directories in 'subvolumegroup ls' command

Internal directories: '_nogroup', '_index', '_legacy', '_deleting'
1. Internal directories should be filtered in 'subvolmegroup ls' command.
2. Internal directories should not be accepted as a group name.

Fixes: https://tracker.ceph.com/issues/55762
Signed-off-by: Nikhilkumar Shelke <nshelke@redhat.com>
(cherry picked from commit ce3fa7f1bcd9ca8a9e9e80ca33a15d0746ce7110)

3 years agoqa: test the correctness of snap dir name
Neeraj Pratap Singh [Wed, 20 Apr 2022 12:54:22 +0000 (18:24 +0530)]
qa: test the correctness of snap dir name

Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
(cherry picked from commit 9fb85b02f3ffe42661f09c2321fff88d014d0a2d)

3 years agomgr/snap_schedule: replace .snap with the client configured snap dirname
Neeraj Pratap Singh [Wed, 20 Apr 2022 12:52:46 +0000 (18:22 +0530)]
mgr/snap_schedule: replace .snap with the client configured snap dirname

Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
(cherry picked from commit 38bf0ab262807af45a961f5e55cb9686bbe18864)

3 years agomgr/dashboard: Hide maintenance option on expand cluster 47724/head
Nizamudeen A [Wed, 15 Jun 2022 18:52:12 +0000 (00:22 +0530)]
mgr/dashboard: Hide maintenance option on expand cluster

Fixes: https://tracker.ceph.com/issues/56070
Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit d66bfe04b8e56e3fe1019ba78e1f4b250458ce71)

3 years agoMerge pull request #47381 from NitzanMordhai/wip-55157-quincy
Yuri Weinstein [Fri, 19 Aug 2022 23:24:30 +0000 (16:24 -0700)]
Merge pull request #47381 from NitzanMordhai/wip-55157-quincy

quincy: mon/ConfigMonitor: fix config get key with whitespace

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agoMerge pull request #46494 from lxbsz/wip-55756
Yuri Weinstein [Fri, 19 Aug 2022 16:40:52 +0000 (09:40 -0700)]
Merge pull request #46494 from lxbsz/wip-55756

Quincy: mds: flush mdlog if locked and still has wanted caps not satisfied

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Kotresh HR <khiremat@redhat.com>
3 years agoMerge pull request #46899 from dparmar18/wip-56111-quincy
Yuri Weinstein [Fri, 19 Aug 2022 14:58:47 +0000 (07:58 -0700)]
Merge pull request #46899 from dparmar18/wip-56111-quincy

quincy: qa/cephfs: fallback to older way of get_op_read_count

Reviewed-by: Kotresh HR <khiremat@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
3 years agoMerge pull request #46495 from lxbsz/wip-55736
Yuri Weinstein [Fri, 19 Aug 2022 14:50:55 +0000 (07:50 -0700)]
Merge pull request #46495 from lxbsz/wip-55736

quincy: client: do not release the global snaprealm until unmounting

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Kotresh HR <khiremat@redhat.com>
3 years agomgr/dashboard: introduce grafana frontend e2e testing
Nizamudeen A [Thu, 7 Apr 2022 13:31:39 +0000 (19:01 +0530)]
mgr/dashboard: introduce grafana frontend e2e testing

Used the https://www.npmjs.com/package/@grafana/e2e npm packages and
followed
https://github.com/grafana/grafana/blob/main/contribute/style-guides/e2e.md
to understand the style of the grafana e2e testing.

In this PR I introduces the tests for the Hosts Overall
Performance and also RGW per Daemon and Overall Performance

Fixes: https://tracker.ceph.com/issues/54356
Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit 3d477a39bbf2d27117fb3b35aa5e394938d3aa33)

 Conflicts:
src/pybind/mgr/dashboard/frontend/package-lock.json
  - generated a new one

3 years agoosd, kv: add debugs along the pg_log_t::dups paths. 47688/head
Radoslaw Zarzynski [Mon, 11 Jul 2022 14:30:34 +0000 (14:30 +0000)]
osd, kv: add debugs along the pg_log_t::dups paths.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit 0a986bff372f81e7ea8e015754bb0342c4edfa87)

3 years agoosd: write_log_and_missing variants of PGLog take DoutPrefixProvider
Radoslaw Zarzynski [Mon, 11 Jul 2022 16:39:59 +0000 (16:39 +0000)]
osd: write_log_and_missing variants of PGLog take DoutPrefixProvider

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit ff8dccda951db39fd9b669e167b4366fb26323c0)

3 years agoosd: warn about too many dups when loading PGLog
Radoslaw Zarzynski [Mon, 11 Jul 2022 14:08:32 +0000 (14:08 +0000)]
osd: warn about too many dups when loading PGLog

Fixes: https://tracker.ceph.com/issues/53729
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit 7376caac965d303d8ee92de6f663405e4f96fe4c)

3 years agoosd, tools: read_log_and_missing of PGLog takes CephContext
Radoslaw Zarzynski [Mon, 11 Jul 2022 17:02:20 +0000 (17:02 +0000)]
osd, tools: read_log_and_missing of PGLog takes CephContext

Will be needed for dealing with the conf.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit fb746dd346f350e43ad1c35244dc3a1eb6bc22f3)

3 years agotest/PGlog: cherry-pick PGLogTrimTest changes for size-based trimming
NitzanMordhai [Tue, 9 Aug 2022 09:37:13 +0000 (09:37 +0000)]
test/PGlog: cherry-pick PGLogTrimTest changes for size-based trimming

This commit brings the changes to the `PGLogTrimTest` that were a part
of the initial fix for dups trimming issue (commit 0d253bcc09a5540fa6c724f6128fb7436ded5ec1)
that got reverted in the meantime by 9bf0053bc99971c0e8591490acbdd635a5bb5145.

Signed-off-by: Nitzan Mordechai <nmordec@redhat.com>
(cherry picked from commit 245fa4883fae8d1e13614999ae01e2d71ae81809)

3 years agoosd: trim dups regardless of their versions
Radosław Zarzyński [Wed, 15 Jun 2022 15:19:30 +0000 (17:19 +0200)]
osd: trim dups regardless of their versions

Fixes: https://tracker.ceph.com/issues/53729
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit aada08acde7a05ad769bb7a886ebcece628d522c)

3 years agotools/ceph_objectstore_tool: Add duplicate pg log entries injection
NitzanMordhai [Wed, 15 Jun 2022 10:58:26 +0000 (10:58 +0000)]
tools/ceph_objectstore_tool: Add duplicate pg log entries injection

To be able to recreate and test pg log duplicate entries, a new option
added to the COT: --op pg-log-inject-dups we will also need to provide
--file json_arry of dups, it can get as many dups that need to be inject

the json for dups is in the following format:
{"reqid": "client.n.n:n", "version": "n'n", "user_version": n, "return_code": n}

Signed-off-by: Nitzan Mordechai <nmordec@redhat.com>
(cherry picked from commit b59ccfd3fda52121e78ce5d0e04f9ef931480861)

3 years agoMerge pull request #47339 from ifed01/wip-ifed-fix-mempool-cache-other-qui
Igor Fedotov [Thu, 18 Aug 2022 20:23:30 +0000 (23:23 +0300)]
Merge pull request #47339 from ifed01/wip-ifed-fix-mempool-cache-other-qui

quincy: os/bluestore: fix AU accounting in bluestore_cache_other mempool

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
3 years agodebian: add libsqlite3-mod-ceph versioned dep for ceph-mgr 47683/head
Patrick Donnelly [Tue, 26 Jul 2022 21:23:09 +0000 (17:23 -0400)]
debian: add libsqlite3-mod-ceph versioned dep for ceph-mgr

Without this, upgrades will keep older versions of the libcephsqlite3
module.

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

Conflicts:
debian/control: trivial

3 years agoMerge pull request #47452 from NitzanMordhai/wip-57030-quincy
Yuri Weinstein [Thu, 18 Aug 2022 15:18:06 +0000 (08:18 -0700)]
Merge pull request #47452 from NitzanMordhai/wip-57030-quincy

quincy: librados: rados_ioctx_destroy check for initialized ioctx

Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #47133 from Matan-B/wip-56578-quincy
Yuri Weinstein [Thu, 18 Aug 2022 15:15:17 +0000 (08:15 -0700)]
Merge pull request #47133 from Matan-B/wip-56578-quincy

quincy: osd/SnapMapper: fix legacy key conversion in snapmapper class

Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #47629 from rhcs-dashboard/wip-57141-quincy
Avan [Thu, 18 Aug 2022 14:33:33 +0000 (20:03 +0530)]
Merge pull request #47629 from rhcs-dashboard/wip-57141-quincy

quincy: exporter: per node metric exporter

Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
3 years agoqa/cephfs: fix read_debug_file() return value and a pep8 violation 46899/head
dparmar18 [Thu, 26 May 2022 09:20:35 +0000 (14:50 +0530)]
qa/cephfs: fix read_debug_file() return value and a pep8 violation

Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit 269567d005092edfd0573cd3fccc302cd96fc618)

3 years agoqa/cephfs: fallback to older way of get_op_read_count
dparmar18 [Mon, 23 May 2022 09:15:40 +0000 (14:45 +0530)]
qa/cephfs: fallback to older way of get_op_read_count

Fixes: https://tracker.ceph.com/issues/55538
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit 0aca27d2fcb17e4e5b5ef339b2d1d011d52dbd6c)

3 years agoceph: move mdlog flush to scatter_writebehind() 46494/head
Xiubo Li [Fri, 4 Mar 2022 07:10:46 +0000 (15:10 +0800)]
ceph: move mdlog flush to scatter_writebehind()

Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit d41359a47e9f068de7f2e7e0cce99888abbf4069)

3 years agomds: flush mdlog if locked and still has wanted caps not satisfied
Xiubo Li [Mon, 7 Mar 2022 07:42:42 +0000 (15:42 +0800)]
mds: flush mdlog if locked and still has wanted caps not satisfied

In _do_cap_update() if one client is releasing the Fw caps the
relevant client range will be erased, and then new_max will be 0.
It will skip flushing the mdlog after it submitting a journal log,
which will keep holding the wrlock for the filelock.

So when a new client is trying to open the file for reading, since
the wrlock is locked for the filelock the file_eval() is possibly
couldn't changing the lock state and at the same time if the
filelock is in stable state, such as in EXECL, MIX. The mds may
skip flushing the mdlog in the open related code too.

We need to flush the mdlog if there still has any wanted caps
couldn't be satisfied and has any lock for the filelock after the
file_eval().

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

3 years agomds: make _need_flush_mdlog() check in both stable and unstable cases
Xiubo Li [Mon, 7 Mar 2022 05:53:19 +0000 (13:53 +0800)]
mds: make _need_flush_mdlog() check in both stable and unstable cases

lock_state_any is true will ignore the lock state.

Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 9ceaa3ae9621b7034c02fd57a28885b2b4652af9)

3 years agoclient: do not release the global snaprealm until unmounting 46495/head
Xiubo Li [Tue, 22 Feb 2022 03:46:44 +0000 (11:46 +0800)]
client: do not release the global snaprealm until unmounting

The global snaprealm would be created and then destroyed immediately
every time when updating it.

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

3 years agoMerge pull request #46076 from idryomov/wip-mrun-bashism-quincy
Ilya Dryomov [Wed, 17 Aug 2022 06:55:08 +0000 (08:55 +0200)]
Merge pull request #46076 from idryomov/wip-mrun-bashism-quincy

quincy: tooling: Change mrun to use bash

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
3 years agoMerge pull request #47400 from tserong/wip-56976-quincy
Yuri Weinstein [Tue, 16 Aug 2022 14:43:01 +0000 (07:43 -0700)]
Merge pull request #47400 from tserong/wip-56976-quincy

quincy: cephfs-shell: move source to separate subdirectory

Reviewed-by: Nikhilkumar Shelke <nshelke@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Kotresh HR <khiremat@redhat.com>
3 years agoMerge pull request #47474 from neesingh-rh/wip-57042-quincy
Yuri Weinstein [Tue, 16 Aug 2022 14:41:24 +0000 (07:41 -0700)]
Merge pull request #47474 from neesingh-rh/wip-57042-quincy

quincy: mgr/volumes: add interface to check the presence of subvolumegroups/subvolumes

Reviewed-by: Kotresh HR <khiremat@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Reviewed-by: Nikhilkumar Shelke <nshelke@redhat.com>
3 years agomgr/dashboard: fix _get_rbd_image_refs caching 47635/head
Pere Diaz Bou [Fri, 15 Jul 2022 14:30:15 +0000 (16:30 +0200)]
mgr/dashboard: fix _get_rbd_image_refs caching

We were cahing _get_rbd_image_refs by Ioctx but the namespace to which
a ioctx is set is also relevant information regarding the references
of a pool.

Signed-off-by: Pere Diaz Bou <pdiazbou@redhat.com>
(cherry picked from commit 950e66b1207f50e3bc91382e07540181d5059511)

3 years agoMerge pull request #47281 from batrick/i56713
Yuri Weinstein [Tue, 16 Aug 2022 14:29:47 +0000 (07:29 -0700)]
Merge pull request #47281 from batrick/i56713

quincy: mds: standby-replay daemon always removed in MDSMonitor::prepare_beacon

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Kotresh HR <khiremat@redhat.com>
3 years agoexporter: per node metric exporter 47629/head
Avan Thakkar [Mon, 1 Aug 2022 06:50:53 +0000 (12:20 +0530)]
exporter: per node metric exporter

Fixes: https://tracker.ceph.com/issues/55046
Signed-off-by: Pere Diaz Bou <pdiazbou@redhat.com>
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit d7226fcc454a96b664a7f567b4bf04338ac7ccf2)

3 years agoMerge pull request #47616 from tchaikov/quincy-fix-warnings
Kefu Chai [Tue, 16 Aug 2022 11:11:52 +0000 (19:11 +0800)]
Merge pull request #47616 from tchaikov/quincy-fix-warnings

quincy: mgr: Define PY_SSIZE_T_CLEAN ahead of every Python.h

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
3 years agoMerge pull request #47602 from tchaikov/quincy-pr-47500
Kefu Chai [Tue, 16 Aug 2022 11:08:47 +0000 (19:08 +0800)]
Merge pull request #47602 from tchaikov/quincy-pr-47500

quincy: pybind/mgr/dashboard: do not use distutils.version.StrictVersion

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
3 years agoMerge pull request #47625 from tchaikov/quincy-pr-47617
Kefu Chai [Tue, 16 Aug 2022 09:43:31 +0000 (17:43 +0800)]
Merge pull request #47625 from tchaikov/quincy-pr-47617

quincy: cmake: set $PATH for tests using jsonnet tools

Reviewed-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@cern.ch>
3 years agocmake: set $PATH for tests using jsonnet tools 47625/head
Kefu Chai [Tue, 16 Aug 2022 02:52:53 +0000 (10:52 +0800)]
cmake: set $PATH for tests using jsonnet tools

otherwise they would not able to find executables installed into
${CMAKE_CURRENT_BINARY_DIR}.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 4a3afcf27769a512fba7e0194d2e3b6a55e06bca)

3 years agoMerge pull request #47104 from rhcs-dashboard/wip-56563-quincy
Nizamudeen A [Tue, 16 Aug 2022 08:36:53 +0000 (14:06 +0530)]
Merge pull request #47104 from rhcs-dashboard/wip-56563-quincy

quincy: mgr/dashboard: rbd image pagination

Reviewed-by: Pegonzal <NOT@FOUND>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agomgr: Define PY_SSIZE_T_CLEAN ahead of every Python.h 47616/head
Pete Zaitcev [Wed, 15 Dec 2021 05:04:34 +0000 (23:04 -0600)]
mgr: Define PY_SSIZE_T_CLEAN ahead of every Python.h

Building on Fedora 35 with Python 3.10 makes vstart to loop
forever, throwing the following message:

 Error EINVAL: SystemError: PY_SSIZE_T_CLEAN macro must be
 defined for '#' formats

I followed the hint in the following document:
 https://docs.python.org/3/c-api/intro.html

It says "recommended" to always define PY_SSIZE_T_CLEAN,
but as you can see it is actually required in our case.

Fixes: https://tracker.ceph.com/issues/53441
Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
(cherry picked from commit 389054888f2aa782f73564125ec7a1ef0212d536)

3 years agopybind/mgr/dashboard: do not use distutils.version.StrictVersion
Kefu Chai [Mon, 8 Aug 2022 14:41:17 +0000 (22:41 +0800)]
pybind/mgr/dashboard: do not use distutils.version.StrictVersion

replace `distutils.version.StrictVersion` with
`pkg_resources.parse_version()`

as the former is deprecated, see https://peps.python.org/pep-0632/.
let's use `pkg_resources` instead. this change also addresses
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010894.
we have this issue when testing with an ubuntu jammy test node.
see https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1967139

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 075b31c1c763286065f13be87c6ba987529b1206)

Conflicts:
debian/ceph-mgr-dashboard.requires: add the runtime requirement
to debian/control instead.

3 years agoMerge pull request #47585 from idryomov/wip-openssl3-deprecation-warnings-quincy
Kefu Chai [Tue, 16 Aug 2022 08:16:33 +0000 (16:16 +0800)]
Merge pull request #47585 from idryomov/wip-openssl3-deprecation-warnings-quincy

quincy: build: Silence deprecation warnings from OpenSSL 3

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
3 years agomgr/dashboard: add flag to automatically deploy loki/promtail service at bootstrap 47623/head
Aashish Sharma [Fri, 29 Jul 2022 07:05:47 +0000 (12:35 +0530)]
mgr/dashboard: add flag to automatically deploy loki/promtail service at bootstrap

Fixes: https://tracker.ceph.com/issues/56964
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
(cherry picked from commit 5ced5f37d29ee019a51e8c903c8a334406601c8c)

3 years agoMerge pull request #47453 from rhcs-dashboard/wip-57037-quincy
Nizamudeen A [Tue, 16 Aug 2022 06:17:44 +0000 (11:47 +0530)]
Merge pull request #47453 from rhcs-dashboard/wip-57037-quincy

quincy: mgr/dashboard: host list tables doesn't show all services deployed

Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agopybind/mgr/dashboard: do not use distutils.version.StrictVersion 47602/head
Kefu Chai [Mon, 8 Aug 2022 14:41:17 +0000 (22:41 +0800)]
pybind/mgr/dashboard: do not use distutils.version.StrictVersion

replace `distutils.version.StrictVersion` with
`pkg_resources.parse_version()`

as the former is deprecated, see https://peps.python.org/pep-0632/.
let's use `pkg_resources` instead. this change also addresses
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010894.
we have this issue when testing with an ubuntu jammy test node.
see https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1967139

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 075b31c1c763286065f13be87c6ba987529b1206)

Conflicts:
debian/ceph-mgr-dashboard.requires: add the runtime requirement
to debian/control instead.

3 years agoMerge pull request #47603 from tchaikov/quincy-pr-45085
Kefu Chai [Tue, 16 Aug 2022 01:47:30 +0000 (09:47 +0800)]
Merge pull request #47603 from tchaikov/quincy-pr-45085

quincy: crimson: fixes for compiling with fmtlib v8

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
3 years agomgr/dashboard: bump up more-itertools 47585/head
Kefu Chai [Fri, 12 Aug 2022 05:06:25 +0000 (13:06 +0800)]
mgr/dashboard: bump up more-itertools

before this change, more-itertools tries to import Sequence from
collections, this leads us to failures like:

```
Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 187, in _run_module_as_main
    mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
  File "/usr/lib/python3.10/runpy.py", line 110, in _get_module_details
    __import__(pkg_name)
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/__init__.py",
line 9, in <module>
    import cherrypy
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cherrypy/__init__.py",
line 76, in <module>
    from . import _cprequest, _cpserver, _cptree, _cplogging, _cpconfig
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cherrypy/_cprequest.py",
line 11, in <module>
    from cherrypy import _cpreqbody
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cherrypy/_cpreqbody.py",
line 135, in <module>
    import cheroot.server
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cheroot/server.py",
line 96, in <module>
    from .workers import threadpool
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cheroot/workers/threadpool.py",
line 20, in <module>
    from jaraco.functools import pass_none
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/jaraco/functools.py",
line 8, in <module>
    import more_itertools
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/more_itertools/__init__.py",
line 1, in <module>
    from more_itertools.more import *  # noqa
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/more_itertools/more.py",
line 3, in <module>
    from collections import Counter, defaultdict, deque, Sequence
ImportError: cannot import name 'Sequence' from 'collections'
(/usr/lib/python3.10/collections/__init__.py)
ERROR: InvocationError for command
/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/bin/python3
-m dashboard.controllers.docs
/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/tmp/openapi.yaml
(exited with code 1)
```
after this change, more-itertools is pin'ed at the latest stable
at the time of writing, which includes the fixes including
https://github.com/more-itertools/more-itertools/commit/30a861bc5a4f53a9ba73923c9048a3632a0f9d18
.

please note, more-itertools dropped python3.3 support. but neither
do us support this python version, so we should be safe.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 26f5678d4f58bfa18c389cd05ecdc454deb3024f)

3 years agomon: Replace deprecated use of format_to
Adam C. Emerson [Mon, 7 Mar 2022 23:54:30 +0000 (18:54 -0500)]
mon: Replace deprecated use of format_to

The non-deprecated version takes an explicit OutputIterator.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
(cherry picked from commit fff72cd14c58d06774cbd0274e6144b42448af03)

3 years agomon: Replace deprecated use of format_to 47603/head
Adam C. Emerson [Mon, 7 Mar 2022 23:54:30 +0000 (18:54 -0500)]
mon: Replace deprecated use of format_to

The non-deprecated version takes an explicit OutputIterator.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
(cherry picked from commit fff72cd14c58d06774cbd0274e6144b42448af03)

3 years agocrimson/admin/osd_admin: avoid using _format()
Kefu Chai [Tue, 1 Mar 2022 16:01:37 +0000 (00:01 +0800)]
crimson/admin/osd_admin: avoid using _format()

see also 3fd91d7e6d9315244aeff02070721ef4a021b0b3

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 36fc37eb618bb04d6543097df07c2ac09c0d79db)