Commit Graph

130071 Commits

Author SHA1 Message Date
Guillaume Abrioux
f57e3c1667
Merge pull request #45216 from guits/fix-54441
ceph-volume: fix generic activate
2022-03-02 22:49:10 +01:00
Casey Bodley
068c0807f3
Merge pull request #45207 from pritha-srivastava/wip-rgw-data-sync-run
rgw: adding OPT_DATA_SYNC_RUN to gc_ops_list so that gc gets

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
2022-03-02 15:35:22 -05:00
Yuri Weinstein
1a684be89d
Merge pull request #44656 from NitzanMordhai/fix_44092_config_get
mon/ConfigMonitor: fix config get key with whitespace

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2022-03-02 08:02:05 -08:00
Yuri Weinstein
d4e218a93b
Merge pull request #44479 from leeq2016/leeq2016_0106
common: Use thread-local pointer variables to save the *shard

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
2022-03-02 08:01:40 -08:00
Yuri Weinstein
7e7e0b31f7
Merge pull request #44425 from sqiu110/fix-ENABLE_COVERAGE
cmake: link ceph-common against gcov if coverage is enabled

Reviewed-by: Neha Ojha <nojha@redhat.com>
2022-03-02 08:00:08 -08:00
Yuri Weinstein
5b5c93be99
Merge pull request #43058 from k0ste/feature_52512
mgr/prometheus: Added `avail_raw` field for Pools DF Prometheus mgr module

Reviewed-by: Neha Ojha <nojha@redhat.com>
2022-03-02 07:59:38 -08:00
Kefu Chai
f356cc8869 cmake: use string(JOIN ..) to compose URL for boost download
* since the minimum required cmake version is now 3.16, there is no
  need to check for cmake version for using multiple URLs for
  downloading external project.
* use string(JOIN ..) to compose URL option for downloading boost

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 23:49:52 +08:00
Ilya Dryomov
33b16fd04d doc: document "ceph config get <who> <option>"
... and note the confusing asymmetry with "ceph config set <who>
<option> <value>".

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2022-03-02 14:17:31 +01:00
Ernesto Puerta
c1a4d9ce49
Merge pull request #44923 from rhcs-dashboard/box-host-add
cephadm/box: default add hosts

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
2022-03-02 13:17:45 +01:00
Guillaume Abrioux
91107665fe
Merge pull request #45080 from ceph/epuertat-patch-1
doc: fix ceph-volume ref
2022-03-02 09:36:32 +01:00
Guillaume Abrioux
22e8c18305
Merge pull request #45082 from ceph/epuertat-patch-3
doc: fix titles
2022-03-02 09:35:56 +01:00
Pritha Srivastava
364f997e63 rgw: adding OPT_DATA_SYNC_RUN to gc_ops_list so that gc gets
initialized for this command.

Fixes: https://tracker.ceph.com/issues/54433
Signed-off-by: Pritha Srivastava <prsrivas@redhat.com>
2022-03-02 09:09:19 +05:30
Kefu Chai
8b8a96debc
Merge pull request #45198 from tchaikov/wip-cxx-20
changes to compile with latest seastar and C++20

Reviewed-by: Samuel Just <sjust@redhat.com>
2022-03-02 10:20:35 +08:00
Liu-Chunmei
260e8af576
Merge pull request #45204 from liu-chunmei/seastore-fix-bad_alloc
crimson/seastore: fix bad_alloc

Reviewed-by: Samuel Just <sjust@redhat.com>
2022-03-01 17:37:20 -08:00
Guillaume Abrioux
3337b62e85 ceph-volume: fix generic activate
afd8be7eac broke it.
It has dropped`block_wal` and `block_db` from
`ceph_volume.devices.raw.activate.activate_bluestore` but
`activate.main.Activate.main` still passes those arguments when
calling `RAWActivate([]).activate()`

Fixes: https://tracker.ceph.com/issues/54441

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
2022-03-02 00:43:17 +01:00
Neha Ojha
f1ff7d346c
Merge pull request #45215 from neha-ojha/wip-cf-add
doc/foundation.rst: Add ArvanCloud to the Foundation

Reviewed-by: Dan van der Ster <daniel.vanderster@cern.ch>
2022-03-01 14:20:42 -08:00
Neha Ojha
4f6eda4233 doc/foundation.rst: Add ArvanCloud to the Foundation
Signed-off-by: Neha Ojha <nojha@redhat.com>
2022-03-01 20:47:21 +00:00
Casey Bodley
12555ea6e5 cmake/rgw: remove detection for curl_multi_wait
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2022-03-01 13:27:42 -05:00
Casey Bodley
a379fdc52e rgw: remove libcurl warning about curl_multi_wait()
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2022-03-01 13:23:45 -05:00
Casey Bodley
73d0ee1b80 Revert "rgw: detect and work around a curl_multi_wait bug"
This reverts commit 0359be62b7.

Signed-off-by: Casey Bodley <cbodley@redhat.com>

Conflicts:
	src/rgw/rgw_http_client.cc array initializer, is_threaded->is_started
2022-03-01 13:21:39 -05:00
Konstantin Shalygin
3a78b9b6b8 mgr/prometheus: added avail_raw field for Pools DF Prometheus mgr module
Fixes: https://tracker.ceph.com/issues/52512

Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2022-03-02 00:50:44 +07:00
Kefu Chai
83b37a5fb7 seastar: bump up seastar submodule to recent master
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 01:21:51 +08:00
Kefu Chai
e6f0464651 crimson/common/interruptible_future: ensure seastar::AllAreFutures<> is happy
if compiled with C++20, C++ concept is enabled. to ensure the
constraints required by when_all_impl() is fulfilled, we need to
specialize is_tuple_of_futures<> for interruptible_future.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 01:11:04 +08:00
Kefu Chai
77a3ed56a7 include/xlist: define iterator without std::iterator<>
std::iterator<> is deprecated in C++17, so let's just
define the required traits directly.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:58:25 +08:00
Kefu Chai
c1039df602 crimson/os/seastore: use iter_cend()
to avoid the pain of fixing the FTBFS with C++20 like

/var/ssd/ceph/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.cc:141:19: error: use of overloaded operator '!=' is ambiguous (with operand types 'crimson::os::seastore::omap_manager::StringKVInnerN$
  assert(child_pt != iter_end());
         ~~~~~~~~ ^  ~~~~~~~~~~
/usr/include/assert.h:93:27: note: expanded from macro 'assert'
     (static_cast <bool> (expr)                                         \
                          ^~~~
/var/ssd/ceph/src/crimson/os/seastore/omap_manager/btree/string_kv_node_layout.h:380:10: note: candidate function
    bool operator==(const iter_t &rhs) const {
         ^
/var/ssd/ceph/src/crimson/os/seastore/omap_manager/btree/string_kv_node_layout.h:380:10: note: candidate function (with reversed parameter order)

also, to be explicit is advisable.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:58:25 +08:00
Kefu Chai
9f4e131021 crimson: include <seastar/core/metrics.hh>
after the restructure of seastar source tree, we have to include
metrics.hh for accessing the metrics types.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:58:25 +08:00
Kefu Chai
36fc37eb61 crimson/admin/osd_admin: avoid using _format()
see also 3fd91d7e6d

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:31:14 +08:00
Kefu Chai
d9cdd6175b crimson/osd: use reference when structured binding
to silence warning from clang13 with -std=c++20, like

ceph/src/crimson/osd/replicated_recovery_backend.cc:1098:21: warning: loop variable '[off, len]' creates a copy from type 'const std::pair<const unsigned long, unsigned long>' [-Wrange-loop-construct]
    for (const auto [off, len] : extents) {
                    ^
ceph/src/crimson/osd/replicated_recovery_backend.cc:1098:10: note: use reference type 'const std::pair<const unsigned long, unsigned long> &' to prevent copying
    for (const auto [off, len] : extents) {
         ^~~~~~~~~~~~~~~~~~~~~~~
                    &

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:31:14 +08:00
Kefu Chai
905969611d include/rados: define iterator without std::iterator<>
std::iterator<> is deprecated in C++17, so let's just
define the required traits directly.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:29:28 +08:00
Kefu Chai
c662ee698c crimson/os: define iterator without std::iterator<>
std::iterator<> is deprecated in C++17, so let's just
define the required traits directly.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:29:28 +08:00
Kefu Chai
fe0da04f1b crimson/os/seastore: remove default ctor for delta_t
otherwise the aggregate initialization for this type would fail to
work on C++20, as the user-declared ctor is defined for this struct.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:29:28 +08:00
Kefu Chai
a8d119fc6f crimson/os: stop using seastar::metrics::label
seastar::metrics::label was dropped in a recent change. quote from
the commit message which removed this type:

>     In practice, it's an over-kill and just add information in the reporting
>    layer.

see also da395f31989a1ee333e489ffb251fc1152f12f0a in seastar repo

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:29:07 +08:00
Kefu Chai
7c381ba985 include/buffer: include <memory>
to address following FTBFS:

/usr/bin/ccache /usr/bin/clang++-13 -DBOOST_ALL_NO_LIB -DBOOST_ASIO_DISABLE_CONCEPTS -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION -DBOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_T$
In file included from /var/ssd/ceph/src/crimson/os/seastore/seastore_types.cc:4:
In file included from /var/ssd/ceph/src/crimson/os/seastore/seastore_types.h:14:
In file included from /var/ssd/ceph/src/include/denc.h:47:
/var/ssd/ceph/src/include/buffer.h:98:37: error: no template named 'unique_ptr' in namespace 'std'; did you mean 'boost::movelib::unique_ptr'?
struct unique_leakable_ptr : public std::unique_ptr<T, ceph::nop_delete<T>> {
                                    ^~~~~~~~~~~~~~~
                                    boost::movelib::unique_ptr
/opt/ceph/include/boost/move/unique_ptr.hpp:354:7: note: 'boost::movelib::unique_ptr' declared here
class unique_ptr
      ^

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-03-02 00:28:55 +08:00
Josh Durgin
c7225ee0e6
Merge pull request #45047 from ceph/wip-yuriw-release-15.2.16-master
doc: 15.2.16 Release Notes

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2022-03-01 08:05:55 -08:00
Yuval Lifshitz
e72b6510a4 rgw: prevent spurious/lost notifications in the index completion thread
this was happening when asyn completions happened during reshard.
more information about testing:
https://gist.github.com/yuvalif/d526c0a3a4c5b245b9e951a6c5a10517

we also add more logs to the completion manager.
should allow finding unhandled completions due to reshards.

Fixes: https://tracker.ceph.com/issues/54435

Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
2022-03-01 11:05:03 -05:00
John Mulligan
dd5a47f833 mgr/nfs: remove redundant check
Remove the extra check of the cluster id from _apply method. As _apply
is a "private" method that should be only called from other private
methods that have already validated the cluster_id. It also removes
a dependency on the orch-requiring func available_clusters.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-03-01 10:11:18 -05:00
John Mulligan
daa455cd16 mgr/nfs: fix unintentional recursion
The `exports` property of the ExportMgr exists to cache the exports
configuration found in the .nfs namespace. Using that property
within the property method is probably not intentional and is probably
only working due to the lucky construction of the _exports dict
immediately after the None check so that the _exports dict is returned
(and is a mutable type).

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-03-01 10:11:18 -05:00
John Mulligan
4d09660dea mgr/nfs: add known_cluster_ids to generalize nfs cluster id fetching
The changes to the nfs module in 8c711afc are working but when I began
writing more test automation I found a few more places in the
export-configuration code path relying on the orchestration module
only. This change generalizes the logic to source nfs clusters from
orchestration when it's enabled but from the .nfs pool when
orchestration is disabled. It then uses that call when loading
the exports cache on the ExportMgr object.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-03-01 10:11:18 -05:00
Zac Dover
88d19c5e43 doc/start: alphabetize hardware-recs links
This PR alphabetizes the internal and external
references at the bottom of the Restructured
Text.

(This is really just a PR made so that I can
show how to make a documentation pull request.)

(In a video.)

(For people who prefer step-by-step instructions
in video form.)

Signed-off-by: Zac Dover <zac.dover@gmail.com>
2022-03-01 23:53:29 +10:00
Ronen Friedman
ded84b8d5f
Merge pull request #44050 from ronen-fr/wip-rf-digest-update
osd/scrub: ignoring unsolicited DigestUpdate events

Reviewed-by: Samuel Just <sjust@redhat.com>
2022-03-01 14:14:25 +02:00
chunmei-liu
3ffe2517a9 crimson/seastore: fix bad_alloc
Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
Signed-off-by: Samuel Just <sjust@redhat.com>
2022-02-28 21:10:22 -08:00
zdover23
327bbd762e
Merge pull request #45139 from zdover23/wip-doc-2022-02-24-hardware-recs-adatri-recs
doc/start: include A. D'Atri's hardware-recs recs

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2022-03-01 14:41:20 +10:00
Adam King
fbe0c3fd23 mgr/cephadm: block removing last instance of _admin label
Fixes: https://tracker.ceph.com/issues/54425

Signed-off-by: Adam King <adking@redhat.com>
2022-02-28 20:23:10 -05:00
Laura Flores
5cdf8929e9
Merge pull request #45191 from neesingh-rh/cephfs-top_doc_fix
doc/cephfs: Typographical error.
2022-02-28 16:20:03 -06:00
Neha Ojha
6259641be7 doc/releases: couple of notable changes for core
also fix release date for v15.2.16

Signed-off-by: Neha Ojha <nojha@redhat.com>
2022-02-28 22:09:29 +00:00
Adam King
9c8fd8a6c1
Merge pull request #45136 from adk3798/extra-all
mgr/cephadm: extend extra_container_args to other service types

Reviewed-by: Michael Fritch <mfritch@suse.com>
2022-02-28 16:58:38 -05:00
Adam King
a0d21c7108 mgr/cephadm: block draining last _admin host
Fixes: https://tracker.ceph.com/issues/54413

Signed-off-by: Adam King <adking@redhat.com>
2022-02-28 16:56:08 -05:00
Casey Bodley
df07e6d013
Merge pull request #45166 from pritha-srivastava/wip-rgw-bucket-sync-run
rgw: add OPT_BUCKET_SYNC_RUN to gc_ops_list, so that

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2022-02-28 16:16:03 -05:00
Neeraj Pratap Singh
d952916190 doc/cephfs: Typographical error.
Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
2022-02-28 15:28:24 +05:30
Zac Dover
07a1f7fe04 doc/start: include A. D'Atri's hardware-recs recs
This PR restores material about partition alignment
and material about separating OS and OSD data that
was removed in an earlier rewrite. The restoration
of this information was requested by Anthony D'Atri in
https://github.com/ceph/ceph/pull/45123/

This PR also includes several refinements to the language
that could not be made to this text until now, owing to my
(Zac's) ignorance and illiteracy.

I call upon Mark Nelson (and anyone else with sufficient
command of the current state of storage technology) to advise
me on whether the Ceph Foundation feels comfortable in the year
2022 referring to QLC as an emerging technology.

Signed-off-by: Zac Dover <zac.dover@gmail.com>

(squash) more notes and revisions

Signed-off-by: Zac Dover <zac.dover@gmail.com>
2022-02-28 19:19:00 +10:00