ceph-ci.git
2 years agocmake: amend linking issues for jaeger wip-osd-tracing
Deepika Upadhyay [Mon, 19 Jul 2021 07:04:11 +0000 (07:04 +0000)]
cmake: amend linking issues for jaeger

apart from using distro yaml-cpp and thrift pkgs, this adds:

* custom target jaeger_base
* target jaeger-base which encapsulates all jaeger libs

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agocmake: delete Buildyaml, since distro suppilies v0.6 this is not needed
Deepika Upadhyay [Mon, 19 Jul 2021 06:56:19 +0000 (06:56 +0000)]
cmake: delete Buildyaml, since distro suppilies v0.6 this is not needed

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agocmake: change debian DESTDIR for installing jaeger deps
Deepika Upadhyay [Mon, 19 Jul 2021 06:49:38 +0000 (06:49 +0000)]
cmake: change debian DESTDIR for installing jaeger deps

debian uses debian/tmp as destination dir for installing build files,
but since we are using common path($build_dir/external) available both
for rpm and debian based dependency installation, it becomes far more
complicated to maintain include/link path for these external projects.

elaborating on it:
path we are configuring for both rpm and debian installing including,
and linking of external librarires:
/build/ceph-17.0.0-5779-g928f9e55/obj-x86_64-linux-gnu/external/
debian appends DESTDIR to this path, and hence our predefined target
artificats cannot find correct path for external libs, I tried adding
ENV${DESTDIR} so that it could include correct external lib install
path, but it still cannot find them:
eg:
https://jenkins.ceph.com/job/ceph-dev-new-build/ARCH=x86_64,AVAILABLE_ARCH=x86_64,AVAILABLE_DIST=focal,DIST=focal,MACHINE_SIZE=gigantic/56123//consoleFull
Since the install path is in our build environment for these librarires,
skipping DESTDIR looks to me hacky fix, but does the job.
with empty destdir:
https://jenkins.ceph.com/job/ceph-dev-new-build/ARCH=x86_64,AVAILABLE_ARCH=x86_64,AVAILABLE_DIST=focal,DIST=focal,MACHINE_SIZE=gigantic/56090//consoleFull

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agocmake: tweak jaeger build requirements
Deepika Upadhyay [Mon, 19 Jul 2021 06:43:58 +0000 (06:43 +0000)]
cmake: tweak jaeger build requirements

what changes:

* target name Jaeger >> jaegertracing : since jaegertracing is the
original target that jaeger submodule uses in it's cmake, cmake build
complained if named otherwise

* remove redundant call build_jaeger

* Boost is a dependency for jaeger, to use the right version, we pass
ceph build boost path to cmake jaeger build step

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agoceph.spec: enable WITH_JAEGER=ON if --with-jaeger passed
Deepika Upadhyay [Mon, 19 Jul 2021 06:12:15 +0000 (06:12 +0000)]
ceph.spec: enable WITH_JAEGER=ON if --with-jaeger passed

needed for cmake optional build options during jenkins shaman builds

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agocmake: use $dependencies to track tragets that'd be build as external project
Deepika Upadhyay [Tue, 6 Jul 2021 21:26:24 +0000 (21:26 +0000)]
cmake: use $dependencies to track tragets that'd be build as external project

jaeger depends on thrift, opentracing, boost, yaml-cpp some of them are
available as distro pkgs, if not available we track and build these
using ${dependencies} variable.

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agocmake: move ExternalProjectHelper & IncludeJaeger to BuildJaeger
Deepika Upadhyay [Tue, 6 Jul 2021 21:18:56 +0000 (21:18 +0000)]
cmake: move ExternalProjectHelper & IncludeJaeger to BuildJaeger

set_library_properties_for_external_project assists with setting right target
properties for all jaeger dependencies.
IncludeJaeger would take care of linking and creating these targets
having them spread out when they are highly coupled seems not optimal.

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agoceph.spec: use yaml-cpp >= 0.6
Deepika Upadhyay [Wed, 7 Jul 2021 12:48:38 +0000 (12:48 +0000)]
ceph.spec: use yaml-cpp >= 0.6

since focal and centos both have yaml-cpp 0.6 available, which dropped
having boost as it's dependency, moving to 0.6 seems a good upgrade.

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agoceph.spec: use thrift from rpm distro pkgs
Deepika Upadhyay [Tue, 6 Jul 2021 16:39:06 +0000 (16:39 +0000)]
ceph.spec: use thrift from rpm distro pkgs

the change to build and ship libthift was added when we didn't have 0.13.0
version shipped via distro pkgs, now that centos 8 and F34 supports req.
version, we do not need to build and ship it with jaeger library.

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agocmake, debian: do not build thrift as ext project, adds yaml-cpp by default
Deepika Upadhyay [Tue, 6 Jul 2021 16:26:10 +0000 (16:26 +0000)]
cmake, debian: do not build thrift as ext project, adds yaml-cpp by default

we need specific versions of thrift(0.13.0+) and yaml-cpp(0.6+) for jaeger to
work properly, earlier they were not supported by distros, but since we moved
to use centos 8 and focal, that seems not be the case.

In this case we shall use the find_package cmake method for thrift and yaml-cpp.
this change updates:

* moves yaml-cpp find/build to src/CMakeLists(as seastar might also need it)
* adds findthrift.cmake and builds thrift if v0.13.0 not found >> adds the same
to debian/libjaeger as pkg files needed

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agocmake: cleanup debian/libjaeger.install mangling
Deepika Upadhyay [Mon, 5 Jul 2021 15:01:32 +0000 (15:01 +0000)]
cmake: cleanup debian/libjaeger.install mangling

we will now be using BuildProfileSpec based optional pkg building,
removing comment from .install file is no longer needed
If pkg.ceph.jaeger is enabled debian/control shall work to install jaeger and
it's dependencies

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agovstart.sh: use quay to pull jaeger instead of docker
Deepika [Fri, 2 Jul 2021 10:53:11 +0000 (10:53 +0000)]
vstart.sh: use quay to pull jaeger instead of docker

In servers like the ones available in sepia labs, users might hit rate limiting for docker pull, it is better to use quay image to avoid this issue.

https://blog.container-solutions.com/dealing-with-docker-hub-rate-limiting

Signed-off-by: Deepika <dupadhya@redhat.com>
2 years agodebian/control: update yaml-cpp version to 0.6
Deepika Upadhyay [Mon, 5 Jul 2021 15:21:30 +0000 (15:21 +0000)]
debian/control: update yaml-cpp version to 0.6

This fixes the build failure, as jaegertracing requires yaml-cpp v0.6+
```
Could NOT find yaml-cpp: Found unsuitable version "", but required is at
  least "0.5.1" (found yaml-cpp_LIBRARY-NOTFOUND)
```
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agodebian, install-deps.sh: use Build-Profiles to optionally build debian libjaeger
Deepika [Mon, 5 Jul 2021 12:10:05 +0000 (12:10 +0000)]
debian, install-deps.sh: use Build-Profiles to optionally build debian libjaeger
library

* use pkg.ceph.jaeger for debian optional pkgs
remove mangling needing install-deps, instead use, buildProfileSpec feature
introduced for debian.  https://wiki.debian.org/BuildProfileSpec * check and

* set extraopts in debian/rules using pkg.ceph.jaeger
see: https://github.com/ceph/ceph/pull/38783#discussion_r662995612

* cleanup libjaeger.install mangling from CMakeLists

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agocmake: update build<lib>.cmake for supporting ninja
Deepika Upadhyay [Tue, 6 Jul 2021 10:18:34 +0000 (10:18 +0000)]
cmake: update build<lib>.cmake for supporting ninja

* affects cmake builds for: yaml-cpp, thrift, jaeger, opentracing external
projects

changes done:
* artificat BUILD_BYPRODUCT which tells ninja which library will be generated
after the build(needed for dependent build libs)
* use cmake_command if `make` not found so that we use default generator, cmake
will identify and use ninja directly in this case.
* minor reorder of boost path in jaeger build external projet

fixes: https://tracker.ceph.com/issues/51029

Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2 years agoinstall-deps.sh: add missing with_jaeger option for ceph.spec mangling
Deepika [Mon, 5 Jul 2021 14:14:22 +0000 (14:14 +0000)]
install-deps.sh: add missing with_jaeger option for ceph.spec mangling

Signed-off-by: Deepika <dupadhya@redhat.com>
2 years agoMerge pull request #42144 from cyx1231st/wip-fix-seastore-cache2
Kefu Chai [Fri, 2 Jul 2021 08:56:24 +0000 (16:56 +0800)]
Merge pull request #42144 from cyx1231st/wip-fix-seastore-cache2

crimson/os/seastore/cache: fix retiring mutation-pending extents

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Xuehan Xu <xuxuehan@360.cn>
2 years agocrimson/os/seastore/cache: fix retiring mutation-pending extents
Yingxin Cheng [Fri, 2 Jul 2021 01:28:39 +0000 (09:28 +0800)]
crimson/os/seastore/cache: fix retiring mutation-pending extents

Mark the retiring mutation-pending extent as INVALID, and add it's
prior-instance to retired-set in order to populate transaction
invalidation correctly.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agoMerge pull request #42143 from athanatos/sjust/wip-cm-omap-int-future
Samuel Just [Fri, 2 Jul 2021 03:34:04 +0000 (20:34 -0700)]
Merge pull request #42143 from athanatos/sjust/wip-cm-omap-int-future

crimson/os/seastore: convert omap and collection_manager to interruptible future

Reviewed-by: Kefu Chai <kchai@redhat.com>
2 years agoMerge pull request #42138 from rzarzynski/wip-crimson-alienstore-indent
Kefu Chai [Fri, 2 Jul 2021 00:16:23 +0000 (08:16 +0800)]
Merge pull request #42138 from rzarzynski/wip-crimson-alienstore-indent

crimson/os: fix indentation in alien_store.cc.

Reviewed-by: Kefu Chai <kchai@redhat.com>
2 years agoMerge pull request #42128 from tchaikov/wip-crimson-asock-cleanup
Kefu Chai [Fri, 2 Jul 2021 00:11:12 +0000 (08:11 +0800)]
Merge pull request #42128 from tchaikov/wip-crimson-asock-cleanup

crimson/asock: cleanups

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2 years agocrimson/os/seastore/omap_manager: convert to use interruptible future
Samuel Just [Wed, 30 Jun 2021 21:29:15 +0000 (14:29 -0700)]
crimson/os/seastore/omap_manager: convert to use interruptible future

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agocrimson/os/seastore/collection_manager: convert to use interruptible_future
Samuel Just [Wed, 30 Jun 2021 00:20:13 +0000 (17:20 -0700)]
crimson/os/seastore/collection_manager: convert to use interruptible_future

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agotest/crimson/seastore: clean up transaction_manager based tests
Samuel Just [Wed, 30 Jun 2021 00:19:23 +0000 (17:19 -0700)]
test/crimson/seastore: clean up transaction_manager based tests

Permits using either vanilla TransactionManager and
InterruptedTransactionManager, updates users to use submit_transaction
helpers.

Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agoMerge pull request #41980 from yuvalif/wip-yuval-fix-51320
Yuval Lifshitz [Thu, 1 Jul 2021 20:43:10 +0000 (23:43 +0300)]
Merge pull request #41980 from yuvalif/wip-yuval-fix-51320

rgw/notification: support version-id for all event types

2 years agoMerge pull request #42127 from ivancich/wip-little-rgw-cleanup
Ali Maredia [Thu, 1 Jul 2021 18:59:29 +0000 (14:59 -0400)]
Merge pull request #42127 from ivancich/wip-little-rgw-cleanup

rgw: a small set of clean-ups

Reviewed-by: Ali Maredia <amaredia@redhat.com>
2 years agoMerge pull request #42012 from yuvalif/wip-yuval-fix-50039
Yuval Lifshitz [Thu, 1 Jul 2021 17:15:58 +0000 (20:15 +0300)]
Merge pull request #42012 from yuvalif/wip-yuval-fix-50039

rgw/notifications: support v4 auth for topics and notifications

2 years agorgw/notification: support version-id for all event types
Yuval Lifshitz [Tue, 22 Jun 2021 16:36:35 +0000 (19:36 +0300)]
rgw/notification: support version-id for all event types

including: object copy, multipart upload, delete marker on versioned bucket

Fixes: https://tracker.ceph.com/issues/51320
Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
2 years agoMerge pull request #42134 from zdover23/wip-doc-cephadm-operations-2021-07-01
zdover23 [Thu, 1 Jul 2021 17:12:22 +0000 (03:12 +1000)]
Merge pull request #42134 from zdover23/wip-doc-cephadm-operations-2021-07-01

doc/cephadm: improve "Ceph Daemon Logs" (1 of x)

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
2 years agoMerge pull request #42023 from TRYTOBE8TME/wip-rgw-notification-tests
Ali Maredia [Thu, 1 Jul 2021 16:44:20 +0000 (12:44 -0400)]
Merge pull request #42023 from TRYTOBE8TME/wip-rgw-notification-tests

rgw: Modification in the usage of force-branch

Reviewed-by: Ali Maredia <amaredia@redhat.com>
2 years agoMerge pull request #41945 from yuvalif/wip-yuval-fix-51261
Yuval Lifshitz [Thu, 1 Jul 2021 16:19:03 +0000 (19:19 +0300)]
Merge pull request #41945 from yuvalif/wip-yuval-fix-51261

rgw/notifications: support metadata filter in CompleteMultipartUpload and Copy events

2 years agoMerge pull request #41953 from SMIL-Infra/fix-dashboard-osd-count
Ernesto Puerta [Thu, 1 Jul 2021 15:26:32 +0000 (17:26 +0200)]
Merge pull request #41953 from SMIL-Infra/fix-dashboard-osd-count

mgr/dashboard: fix OSD out count

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2 years agoMerge pull request #42116 from votdev/issue_51443_migrate_userdb
Ernesto Puerta [Thu, 1 Jul 2021 15:23:03 +0000 (17:23 +0200)]
Merge pull request #42116 from votdev/issue_51443_migrate_userdb

mgr/dashboard: User database migration has been cut out

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
2 years agocrimson/os: fix indentation in alien_store.cc.
Radoslaw Zarzynski [Thu, 1 Jul 2021 14:34:39 +0000 (14:34 +0000)]
crimson/os: fix indentation in alien_store.cc.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2 years agoMerge PR #42107 into master
Sage Weil [Thu, 1 Jul 2021 13:11:09 +0000 (09:11 -0400)]
Merge PR #42107 into master

* refs/pull/42107/head:
mgr/ActivePyModules: streamline mgr_ips a bit
mgr/ActivePyModules: don't take unnecessary lock
pybind/mgr/mgr_module: use get("mgr_ips") for standby get_mgr_ip()
mgr: add get() for standby modules

Reviewed-by: Daniel Pivonka <dpivonka@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Patrick Seidensal <pseidensal@suse.com>
2 years agodoc/cephadm: improve "Ceph Daemon Logs" (1 of x)
Zac Dover [Thu, 1 Jul 2021 12:43:10 +0000 (22:43 +1000)]
doc/cephadm: improve "Ceph Daemon Logs" (1 of x)

This PR turned out to be a 3-in-1:

(1) improves syntax and formatting of "Logging to stdout"
(2) improves syntax and formatting of "Logging to files"
(3) replaces all carets with tildes in 3rd-level section
    headers in operations.rst (./build-doc was crying
    about inconsistency when I fed it tildes, but tildes
    and not carets are the RST standard according to
    https://docutils.sourceforge.io/ \
    docs/user/rst/quickstart.html#sections
    so the carets had to go.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
2 years agoMerge pull request #42130 from tchaikov/wip-doc-install
Kefu Chai [Thu, 1 Jul 2021 09:59:38 +0000 (17:59 +0800)]
Merge pull request #42130 from tchaikov/wip-doc-install

doc/install/get-packages: s/el7/el8/ and cleanups

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
2 years agoMerge pull request #42108 from zdover23/wip-doc-upgrading-ceph-cancelling-the-upgrade...
Kefu Chai [Thu, 1 Jul 2021 09:50:34 +0000 (17:50 +0800)]
Merge pull request #42108 from zdover23/wip-doc-upgrading-ceph-cancelling-the-upgrade-2021-06-30

doc/cephadm: improve "Canceling an Upgrade"

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
2 years agodoc/install/get-packages: do not mention additional 3rd party packages
Kefu Chai [Thu, 1 Jul 2021 08:34:55 +0000 (16:34 +0800)]
doc/install/get-packages: do not mention additional 3rd party packages

since we are able to build and run on ubuntu focal without extra
dependencies of 3rd party packages, there is no need to mention them.
actually all of the removed packages are available in ubuntu focal.
some of them have different package names though.

the same applies to el8.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agodoc/install/get-packages: s/el7/el8/
Kefu Chai [Thu, 1 Jul 2021 08:25:19 +0000 (16:25 +0800)]
doc/install/get-packages: s/el7/el8/

since we don't build for el7 anymore. replace all occurrences of el7 with
el8.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agorgw: Modification in the usage of force-branch wip-rgw-notification-tests
Kalpesh Pandya [Thu, 24 Jun 2021 18:46:53 +0000 (00:16 +0530)]
rgw: Modification in the usage of force-branch

Signed-off-by: Kalpesh Pandya <kapandya@redhat.com>
2 years agocrimson/admin: let AdminSocket::register_command() return void
Kefu Chai [Thu, 1 Jul 2021 06:32:31 +0000 (14:32 +0800)]
crimson/admin: let AdminSocket::register_command() return void

instead of returning a seastar::future<>, it can just return void,
as it does not involve asynchronous operations.

also drop servers_tbl_rwlock, as we don't register hooks after OSD
starts, there is no need to protect hooks with a rw lock.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agocrimson/admin: remove unused variable
Kefu Chai [Thu, 1 Jul 2021 06:26:38 +0000 (14:26 +0800)]
crimson/admin: remove unused variable

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agoMerge pull request #42080 from cyx1231st/wip-seastore-fix-cache
Samuel Just [Thu, 1 Jul 2021 04:17:47 +0000 (21:17 -0700)]
Merge pull request #42080 from cyx1231st/wip-seastore-fix-cache

crimson/os/seastore/cache: misc fixes and cleanup

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Xuehan Xu <xuxuehan@360.cn>
2 years agocrimson/os/seastore/cache: rename try_construct_record to prepare_record
Yingxin Cheng [Wed, 30 Jun 2021 06:03:29 +0000 (14:03 +0800)]
crimson/os/seastore/cache: rename try_construct_record to prepare_record

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: wait io when read from Cache::extents
Yingxin Cheng [Wed, 30 Jun 2021 05:22:07 +0000 (13:22 +0800)]
crimson/os/seastore/cache: wait io when read from Cache::extents

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: add the missing extent invalid check
Yingxin Cheng [Wed, 30 Jun 2021 03:55:39 +0000 (11:55 +0800)]
crimson/os/seastore/cache: add the missing extent invalid check

see 2bc257beb2ef1253e38c254745f42b3ac5db52de

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: add missing add_to_read_set()
Yingxin Cheng [Wed, 30 Jun 2021 03:47:50 +0000 (11:47 +0800)]
crimson/os/seastore/cache: add missing add_to_read_set()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: cleanup get_extent_if_cached()
Yingxin Cheng [Wed, 30 Jun 2021 03:44:56 +0000 (11:44 +0800)]
crimson/os/seastore/cache: cleanup get_extent_if_cached()

And remove the query_cache_for_extent(t).

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: fix get_extent_by_type(t) to use Transaction::get_extent()
Yingxin Cheng [Wed, 30 Jun 2021 03:06:52 +0000 (11:06 +0800)]
crimson/os/seastore/cache: fix get_extent_by_type(t) to use Transaction::get_extent()

The original query_cache_for_extent() doesn't call wait_io() if the
extent is pending. And the following get_extent_by_type() already covers
the lookup to Cache::extents and also implements wait_io() correctly.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: add absent extent to read-set before retire
Yingxin Cheng [Tue, 29 Jun 2021 01:39:10 +0000 (09:39 +0800)]
crimson/os/seastore/cache: add absent extent to read-set before retire

So that transaction can be invalidated if the retiring extent has
conflict.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: remove retired extents from cache
Yingxin Cheng [Tue, 29 Jun 2021 01:36:01 +0000 (09:36 +0800)]
crimson/os/seastore/cache: remove retired extents from cache

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore: fix print_detail() of RetiredExtentPlaceholder
Yingxin Cheng [Tue, 29 Jun 2021 01:31:49 +0000 (09:31 +0800)]
crimson/os/seastore: fix print_detail() of RetiredExtentPlaceholder

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: cleanup try_construct_record() optional return
Yingxin Cheng [Mon, 28 Jun 2021 14:12:46 +0000 (22:12 +0800)]
crimson/os/seastore/cache: cleanup try_construct_record() optional return

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/onode-staged-tree: check invalid transaction only
Yingxin Cheng [Mon, 28 Jun 2021 13:38:49 +0000 (21:38 +0800)]
crimson/onode-staged-tree: check invalid transaction only

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: retire PRESENT extents and add to retired-set
Yingxin Cheng [Mon, 28 Jun 2021 13:36:18 +0000 (21:36 +0800)]
crimson/os/seastore/cache: retire PRESENT extents and add to retired-set

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agocrimson/os/seastore/cache: invalidate transaction referencing retired extents
Yingxin Cheng [Mon, 28 Jun 2021 13:32:21 +0000 (21:32 +0800)]
crimson/os/seastore/cache: invalidate transaction referencing retired extents

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2 years agoMerge pull request #42103 from athanatos/sjust/wip-seastore-collection-ordering
Kefu Chai [Thu, 1 Jul 2021 02:06:40 +0000 (10:06 +0800)]
Merge pull request #42103 from athanatos/sjust/wip-seastore-collection-ordering

crimson/seastore: enforce per-collection transaction ordering

Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Xuehan Xu <xuxuehan@360.cn>
2 years agoMerge pull request #41932 from tchaikov/wip-mgr-mock-osdmap
Kefu Chai [Thu, 1 Jul 2021 01:50:45 +0000 (09:50 +0800)]
Merge pull request #41932 from tchaikov/wip-mgr-mock-osdmap

mgr,pybind/mgr: add OSDMap.build_simple() method

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2 years agoMerge pull request #41958 from ceph/wip-yuriw-notes-14.2.22_2
Ilya Dryomov [Wed, 30 Jun 2021 22:30:49 +0000 (00:30 +0200)]
Merge pull request #41958 from ceph/wip-yuriw-notes-14.2.22_2

doc: 14.2.22 Release Notes

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2 years agodoc/releases/nautilus,octopus: add a note for msgr2 interoperability fix
Ilya Dryomov [Wed, 23 Jun 2021 19:42:11 +0000 (21:42 +0200)]
doc/releases/nautilus,octopus: add a note for msgr2 interoperability fix

octopus 15.2.13 already shipped, let's add it retroactively.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2 years agodoc/releases/nautilus: add notable changes for RADOS
Neha Ojha [Tue, 22 Jun 2021 22:39:15 +0000 (22:39 +0000)]
doc/releases/nautilus: add notable changes for RADOS

Signed-off-by: Neha Ojha <nojha@redhat.com>
2 years agodoc: 14.2.22 Release Notes
Yuri Weinstein [Mon, 21 Jun 2021 20:27:01 +0000 (20:27 +0000)]
doc: 14.2.22 Release Notes

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
2 years agoMerge pull request #42118 from sandrobonazzola/patch-3
Ilya Dryomov [Wed, 30 Jun 2021 22:05:17 +0000 (00:05 +0200)]
Merge pull request #42118 from sandrobonazzola/patch-3

doc/rbd/iscsi-initiator-linux: set "product" in multipath.conf

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2 years agodoc/rbd/iscsi-initiator-linux: set "product" in multipath.conf
Sandro Bonazzola [Wed, 30 Jun 2021 16:14:09 +0000 (18:14 +0200)]
doc/rbd/iscsi-initiator-linux: set "product" in multipath.conf

Adding missing parameter in multipath configuration.  See
https://bugzilla.redhat.com/show_bug.cgi?id=1769135.

Signed-off-by: Sandro Bonazzola <sbonazzo@redhat.com>
2 years agorgw: a small set of clean-ups
J. Eric Ivancich [Wed, 30 Jun 2021 19:39:33 +0000 (15:39 -0400)]
rgw: a small set of clean-ups

Small items noticed along the way and addressed collectively in this
small "omnibus" PR.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2 years agoMerge pull request #42121 from ceph/wip-md
Josh Durgin [Wed, 30 Jun 2021 18:42:00 +0000 (11:42 -0700)]
Merge pull request #42121 from ceph/wip-md

ceph-release-notes: Support for markdown for new ceph.io site

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2 years agoceph-release-notes: Support for markdown for new ceph.io site
David Galloway [Wed, 30 Jun 2021 17:11:06 +0000 (13:11 -0400)]
ceph-release-notes: Support for markdown for new ceph.io site

Signed-off-by: David Galloway <dgallowa@redhat.com>
2 years agomgr/ActivePyModules: streamline mgr_ips a bit
Sage Weil [Wed, 30 Jun 2021 13:03:13 +0000 (09:03 -0400)]
mgr/ActivePyModules: streamline mgr_ips a bit

Signed-off-by: Sage Weil <sage@newdream.net>
2 years agomgr/ActivePyModules: don't take unnecessary lock
Sage Weil [Tue, 29 Jun 2021 22:49:52 +0000 (18:49 -0400)]
mgr/ActivePyModules: don't take unnecessary lock

This isn't needed.

Signed-off-by: Sage Weil <sage@newdream.net>
2 years agopybind/mgr/mgr_module: use get("mgr_ips") for standby get_mgr_ip()
Sage Weil [Tue, 29 Jun 2021 22:47:13 +0000 (18:47 -0400)]
pybind/mgr/mgr_module: use get("mgr_ips") for standby get_mgr_ip()

This is necessary to allow the standby mgr to bind to the right IP.

Signed-off-by: Sage Weil <sage@newdream.net>
2 years agomgr: add get() for standby modules
Sage Weil [Tue, 29 Jun 2021 22:46:36 +0000 (18:46 -0400)]
mgr: add get() for standby modules

Fixes: https://tracker.ceph.com/issues/51446
Signed-off-by: Sage Weil <sage@newdream.net>
2 years agoMerge pull request #42026 from rhcs-dashboard/bucket-name-regex-fix
Ernesto Puerta [Wed, 30 Jun 2021 15:09:40 +0000 (17:09 +0200)]
Merge pull request #42026 from rhcs-dashboard/bucket-name-regex-fix

mgr/dashboard: Fix bucket name input allowing space in the value

Reviewed-by: Waad Alkhoury <walkhour@redhat.com>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2 years agoMerge pull request #41353 from a16bitsysop/mgr-node_modules
Kefu Chai [Wed, 30 Jun 2021 14:44:55 +0000 (22:44 +0800)]
Merge pull request #41353 from a16bitsysop/mgr-node_modules

pybind/mgr/CMakeLists.txt: exclude files not used at runtime

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2 years agomgr/dashboard: User database migration has been cut out
Volker Theile [Wed, 30 Jun 2021 12:00:28 +0000 (14:00 +0200)]
mgr/dashboard: User database migration has been cut out

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

Fixes: https://tracker.ceph.com/issues/51443
Signed-off-by: Volker Theile <vtheile@suse.com>
2 years agoMerge pull request #41954 from pkalever/notrim
Ilya Dryomov [Wed, 30 Jun 2021 12:02:10 +0000 (14:02 +0200)]
Merge pull request #41954 from pkalever/notrim

rbd-nbd: support notrim option with map command

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2 years agoMerge pull request #42089 from tchaikov/wip-xattr-cleanup
Kefu Chai [Wed, 30 Jun 2021 11:30:09 +0000 (19:30 +0800)]
Merge pull request #42089 from tchaikov/wip-xattr-cleanup

osd, crimson/osd: do_cmp_xattr() related cleanups

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
2 years agoMerge pull request #42054 from tchaikov/wip-os-xattrs
Kefu Chai [Wed, 30 Jun 2021 11:29:17 +0000 (19:29 +0800)]
Merge pull request #42054 from tchaikov/wip-os-xattrs

os: use transparent comparator in ObjectStore::getattrs()

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
2 years agoMerge pull request #42043 from tchaikov/wip-ceph-argparse-ann
Kefu Chai [Wed, 30 Jun 2021 11:28:07 +0000 (19:28 +0800)]
Merge pull request #42043 from tchaikov/wip-ceph-argparse-ann

pybind/ceph_argparse: do not set self.typeargs in ctor of CephArgtype

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
2 years agoMerge pull request #42087 from tchaikov/wip-common-buffers
Kefu Chai [Wed, 30 Jun 2021 11:27:34 +0000 (19:27 +0800)]
Merge pull request #42087 from tchaikov/wip-common-buffers

common/buffers: check _num directly in list::c_str()

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2 years agoMerge pull request #42084 from tchaikov/wip-49638
Kefu Chai [Wed, 30 Jun 2021 11:26:42 +0000 (19:26 +0800)]
Merge pull request #42084 from tchaikov/wip-49638

qa: run e2e test on centos only

Reviewed-by: Laura Paduano <lpaduano@suse.com>
2 years agoMerge pull request #42047 from tchaikov/wip-autoscaler-ann
Kefu Chai [Wed, 30 Jun 2021 11:26:01 +0000 (19:26 +0800)]
Merge pull request #42047 from tchaikov/wip-autoscaler-ann

pybind/mgr/pg_autoscaler: add typing annotations and cleanups

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
2 years agoMerge pull request #42082 from fengchunsong/master
Kefu Chai [Wed, 30 Jun 2021 11:25:21 +0000 (19:25 +0800)]
Merge pull request #42082 from fengchunsong/master

common: Use double instead of long double to improve performance

Reviewed-by: Kefu Chai <kchai@redhat.com>
2 years agoMerge pull request #37866 from pritha-srivastava/wip-sts-47809
Matt Benjamin [Wed, 30 Jun 2021 11:17:22 +0000 (07:17 -0400)]
Merge pull request #37866 from pritha-srivastava/wip-sts-47809

rgw/sts: fix for copy object operation using sts

2 years agoqa/workunits/rbd-nbd: add notrim test
Prasanna Kumar Kalever [Mon, 28 Jun 2021 08:27:47 +0000 (13:57 +0530)]
qa/workunits/rbd-nbd: add notrim test

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
2 years agomgr/dashboard: Fix bucket name input allows space in the value
Nizamudeen A [Fri, 25 Jun 2021 13:30:42 +0000 (19:00 +0530)]
mgr/dashboard: Fix bucket name input allows space in the value

Fixes: https://tracker.ceph.com/issues/51368
Signed-off-by: Nizamudeen A <nia@redhat.com>
2 years agopybind/mgr/pg_autoscaler: add typing annotations
Kefu Chai [Mon, 28 Jun 2021 03:32:41 +0000 (11:32 +0800)]
pybind/mgr/pg_autoscaler: add typing annotations

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agopybind/mgr/pg_autoscaler: do not index pool_root with pool_name
Kefu Chai [Mon, 28 Jun 2021 05:24:41 +0000 (13:24 +0800)]
pybind/mgr/pg_autoscaler: do not index pool_root with pool_name

pool_root is indexed by pool_id, and we never index it with pool_name.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agopybind/mgr/pg_autoscaler: do not create a tuple long_desc
Kefu Chai [Mon, 28 Jun 2021 04:39:12 +0000 (12:39 +0800)]
pybind/mgr/pg_autoscaler: do not create a tuple long_desc

long_desc is supposed to be a str, not a tuple of str.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agopybind/mgr/pg_autoscaler: extract CrushSubtreeResourceStatus out
Kefu Chai [Mon, 28 Jun 2021 04:28:17 +0000 (12:28 +0800)]
pybind/mgr/pg_autoscaler: extract CrushSubtreeResourceStatus out

as it also serves as part of interface of get_subtree_resource_status(),
not only its internals. to ease adding the type annotations, this class
is promoted out of the class.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agopybind/mgr/pg_autoscaler: define commands using CLICommand
Kefu Chai [Mon, 28 Jun 2021 03:44:05 +0000 (11:44 +0800)]
pybind/mgr/pg_autoscaler: define commands using CLICommand

simpler this way

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agopybind/mgr/pg_autoscaler: define options using Option
Kefu Chai [Mon, 28 Jun 2021 03:34:09 +0000 (11:34 +0800)]
pybind/mgr/pg_autoscaler: define options using Option

more consistent and less error-prune this way.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agodoc/cephadm: improve "Canceling an Upgrade"
Zac Dover [Wed, 30 Jun 2021 05:20:13 +0000 (15:20 +1000)]
doc/cephadm: improve "Canceling an Upgrade"

This PR improves the section "Canceling an Upgrade"
in the "Upgrading Ceph" chapter of the cephadm
documentation.

I removed an extraneous prompt and rewrote a sentence
so that it was congruent with other sentences in similar
places elsewhere in the documentation.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
2 years agoMerge pull request #41919 from agayev/zoned-more-cleaning-support
Kefu Chai [Wed, 30 Jun 2021 03:07:24 +0000 (11:07 +0800)]
Merge pull request #41919 from agayev/zoned-more-cleaning-support

os/bluestore: More support for cleaning zones.

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
2 years agoMerge pull request #42100 from rzarzynski/wip-crimson-assert_moveable
Kefu Chai [Wed, 30 Jun 2021 02:22:24 +0000 (10:22 +0800)]
Merge pull request #42100 from rzarzynski/wip-crimson-assert_moveable

crimson: introduce assert_moveable().

Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2 years agopybind/ceph_argparse: add more type annotations
Kefu Chai [Sun, 27 Jun 2021 08:15:57 +0000 (16:15 +0800)]
pybind/ceph_argparse: add more type annotations

Signed-off-by: Kefu Chai <kchai@redhat.com>
2 years agoMerge pull request #41976 from tchaikov/wip-crimson-alienstore-lockless
Kefu Chai [Wed, 30 Jun 2021 00:38:41 +0000 (08:38 +0800)]
Merge pull request #41976 from tchaikov/wip-crimson-alienstore-lockless

crimson/os: use lockfree queue for sharded queue

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
2 years agoMerge PR #42101 into master
Patrick Donnelly [Tue, 29 Jun 2021 18:20:36 +0000 (11:20 -0700)]
Merge PR #42101 into master

* refs/pull/42101/head:
cephsqlite: add comment on atexit

Reviewed-by: Kefu Chai <kchai@redhat.com>
2 years agocrimson/os/seastore: add collection ordering
Samuel Just [Tue, 29 Jun 2021 17:06:45 +0000 (10:06 -0700)]
crimson/os/seastore: add collection ordering

Adds a mutex to SeastoreCollection which ensures that transactions are
ordered on a per-collection basis.  Future optimizations could enable
the transaction construction phase to be pipelined for a single collection,
but would require correctly handling the case where a more recently
submitted transaction encounters a conflict.

Fixes: https://tracker.ceph.com/issues/51358
Signed-off-by: Samuel Just <sjust@redhat.com>
2 years agocrimson/os/seastore/seastore: preserve Transaction::handle on reset for writes
Samuel Just [Mon, 28 Jun 2021 21:24:44 +0000 (14:24 -0700)]
crimson/os/seastore/seastore: preserve Transaction::handle on reset for writes

We're going to need to preserve the pipeline phase locking on conflict.

Signed-off-by: Samuel Just <sjust@redhat.com>