]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Matan Breizman [Wed, 15 May 2024 13:33:24 +0000 (16:33 +0300)]
Merge pull request #57281 from Matan-B/wip-55684-squid
squid: crimson: fixes for stack-use-after-return on recent clang and gcc versions
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:41:40 +0000 (13:41 +0300)]
Merge pull request #57350 from Matan-B/wip-56217-squid
squid: test/crimson/sesastore/test_block: add constructor to construct
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:41:19 +0000 (13:41 +0300)]
Merge pull request #57349 from Matan-B/wip-56462-squid
squid: crimson/os/seastore: fix use after free error
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:40:56 +0000 (13:40 +0300)]
Merge pull request #57348 from Matan-B/wip-56332-squid
squid: crimson/os/pg_map: allow multiple shards to create new pg mappings at the same time
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:39:05 +0000 (13:39 +0300)]
Merge pull request #57346 from Matan-B/wip-56374-squid
squid: crimson/osd/osd.h: declare osdmap after OSDSingletonState
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:38:40 +0000 (13:38 +0300)]
Merge pull request #57345 from Matan-B/wip-56250-squid
squid: crimson/os/seastore: cache metadata during trimming to prevent from disk read
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:38:12 +0000 (13:38 +0300)]
Merge pull request #57344 from Matan-B/wip-55846-squid
squid: crimson: add coroutine support for errorated and interruptible futures
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:34:26 +0000 (13:34 +0300)]
Merge pull request #57326 from Matan-B/wip-55855-squid
squid: crimson/os/seastore: adjust SeaStore::_omap_set_kvs() params
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:27:25 +0000 (13:27 +0300)]
Merge pull request #57322 from Matan-B/wip-55981-squid
squid: crimson/os/seastore/collection_manager: allow empty-delta-buffer collection nodes
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:21:14 +0000 (13:21 +0300)]
Merge pull request #57315 from Matan-B/wip-55977-squid
squid: crimson/os/seastore: allow to remap the dirty extent
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:20:41 +0000 (13:20 +0300)]
Merge pull request #57314 from Matan-B/wip-55536-squid
squid: osd/SnapMapper: Crimson - fix OSDriver::get_next
Reviewed-by: Aishwarya Mathuria <amathuri@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:19:39 +0000 (13:19 +0300)]
Merge pull request #57312 from Matan-B/wip-55910-squid
squid: osd/SnapManager: Crimson - fix std::string constructed from 0
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:19:09 +0000 (13:19 +0300)]
Merge pull request #57311 from Matan-B/wip-55946-squid
squid: crimson/os/seastore: make less verbose log when testing performance on RBM
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:18:00 +0000 (13:18 +0300)]
Merge pull request #57289 from Matan-B/wip-55772-squid
squid: crimson/os/seastore: two attrs related bug fixes
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:17:31 +0000 (13:17 +0300)]
Merge pull request #57288 from Matan-B/wip-55705-squid
squid: crimson/os/seastore: fix wrong-positioned asserts
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:15:37 +0000 (13:15 +0300)]
Merge pull request #57286 from Matan-B/wip-55407-squid
squid: crimson/osd/shard_services: make sure that only up/acting members can create pgs
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:15:11 +0000 (13:15 +0300)]
Merge pull request #57283 from Matan-B/wip-55641-squid
squid: crimson/osd/main: Enable multicore client messenger
Reviewed-by: Samuel Just <sjust@redhat.com>
Matan Breizman [Wed, 15 May 2024 10:11:29 +0000 (13:11 +0300)]
Merge pull request #56508 from rosinL/wip-65164-squid
squid: cmake/AddCephTest: bind crimson unittest to different cores
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Ilya Dryomov [Wed, 15 May 2024 07:32:04 +0000 (09:32 +0200)]
Merge pull request #57465 from idryomov/wip-51845-squid
squid: qa/suites/krbd: drop pre-single-major and move "layering only" coverage
Reviewed-by: Ramana Raja <rraja@redhat.com>
Aashish Sharma [Wed, 15 May 2024 07:16:03 +0000 (12:46 +0530)]
Merge pull request #57461 from frittentheke/wip-65838-squid
squid: monitoring/ceph-mixin: Cleanup of variables, queries and tests (to fix showMultiCluster=True)
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Ilya Dryomov [Mon, 13 May 2024 11:45:26 +0000 (13:45 +0200)]
qa/suites/krbd: rename no-object-map to no-exclusive-lock
Exclusive lock has always been disabled by this facet, so it might as
well be reflected in its name.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
ad6a95d8af42b1c3ed9d244c6161e5269356c7c9 )
Ilya Dryomov [Mon, 13 May 2024 11:31:17 +0000 (13:31 +0200)]
qa/suites/krbd: move "layering only" coverage to fsx
It makes much more sense there since it's where we actually create
clones and flatten them a lot.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
7b9f28e74325aad17c3774d594c3f0e1c4e25dc2 )
Ilya Dryomov [Sun, 12 May 2024 09:15:36 +0000 (11:15 +0200)]
qa/suites/krbd: drop pre-single-major test
Single-major mapping scheme was introduced in 2014 and became the
default in 2017. It's getting increasingly difficult to build and,
more importantly, to boot a 10 year old kernel with recent userspace
(systemd, etc). If someone is still running such a kernel, it's
really unlikely that they would have the most recent rbd CLI tool
installed.
Fixes: https://tracker.ceph.com/issues/51845
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
39a579144cd8b97dd338bfcf36c06ad4bcaed526 )
Christian Rohmann [Fri, 26 Jan 2024 14:05:52 +0000 (15:05 +0100)]
Cleanup of variables, queries and tests to enable showMultiCluster=True
Rendering the dashboards with showMultiCluster=True allows for
them to work with multiple clusters storing their metrics in a single
Prometheus instance. This works via the cluster label and that functionality
already existed. This just fixes some inconsistencies in applying the label
filters.
Additionally this contains updates to the tests to have them succeed with
with both configurations and avoid the introduction of regressions in
regards to multiCluster in the future.
There also are some consistency cleanups here and there:
* `datasource` was not used consistently
* `cluster` label_values are determined from `ceph_health_status`
* `job` template and filters on this label were removed to align multi cluster
support solely via the `cluster` label
* `ceph_hosts` filter now uses label_values from any ceph_metadata metrici
to now show all instance values, but those of hosts with some Ceph
component / daemon.
* Enable showMultiCluster=True since `cluster` label is now always present,
via https://github.com/ceph/ceph/pull/54964
Improves: https://tracker.ceph.com/issues/64321
Signed-off-by: Christian Rohmann <christian.rohmann@inovex.de>
(cherry picked from commit
090b8e17f1e84d8b20e05143d5dd7ff107031176 )
Anthony D'Atri [Sun, 12 May 2024 21:36:53 +0000 (17:36 -0400)]
Merge pull request #57426 from zdover23/wip-doc-2024-05-13-backport-57420-to-squid
squid: doc/cephfs: edit fs-volumes.rst (1 of x) followup
Zac Dover [Sun, 12 May 2024 01:39:34 +0000 (11:39 +1000)]
doc/cephfs: edit fs-volumes.rst (1 of x) followup
Include the suggestions for improving doc/cephfs/fs-volumes.rst made by
Anthony D'Atri here
https://github.com/ceph/ceph/pull/57415#discussion_r1597362110
Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com>
Signed-off-by: Zac Dover <zac.dover@proton.me>
(cherry picked from commit
cb700d804b4390fd9f55444dcfc04dfebac3a1bf )
Zac Dover [Sun, 12 May 2024 20:55:15 +0000 (06:55 +1000)]
Merge pull request #57417 from zdover23/wip-doc-2024-05-12-backport-57415-to-squid
squid: doc/cephfs: edit fs-volumes.rst (1 of x)
Reviewed-by: Cole Mitchell <cole.mitchell.ceph@gmail.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Avan [Sun, 12 May 2024 07:36:18 +0000 (13:06 +0530)]
Merge pull request #56519 from rhcs-dashboard/wip-65133-squid
squid: mgr/dashboard: add support for NFSv3 exports
Reviewed-by: afreen23 <NOT@FOUND>
Anthony D'Atri [Sun, 12 May 2024 05:25:23 +0000 (01:25 -0400)]
Merge pull request #57422 from zdover23/wip-doc-2024-05-12-backport-57421-to-squid
squid: doc/dev: s/to asses/to assess/
Zac Dover [Sun, 12 May 2024 02:27:23 +0000 (12:27 +1000)]
doc/dev: s/to asses/to assess/
s/to asses/to assess/ in doc/deve/developer_guide/dash-devel.
Signed-off-by: Zac Dover <zac.dover@proton.me>
(cherry picked from commit
832358b072ec5cb4672de8a7a7aebf10a39fd0e5 )
Zac Dover [Sat, 11 May 2024 04:57:23 +0000 (14:57 +1000)]
doc/cephfs: edit fs-volumes.rst (1 of x)
Edit doc/cephfs/fs-volumes to the section "FS Subvolumes" (but not
including the section "FS Subvolumes").
Signed-off-by: Zac Dover <zac.dover@proton.me>
(cherry picked from commit
0acbb278fc712c32334fd7340b887d2865dbfb86 )
Zac Dover [Sat, 11 May 2024 23:47:27 +0000 (09:47 +1000)]
Merge pull request #57390 from zdover23/wip-doc-2024-05-10-backport-57372-to-squid
squid: doc/cephfs: expand the role of quiesce in consistent backups
Reviewed-by: Cole Mitchell <cole.mitchell@gmail.com>
Zac Dover [Fri, 10 May 2024 11:21:17 +0000 (21:21 +1000)]
Merge pull request #57364 from zdover23/wip-doc-2024-05-09-radosgw-bucketpolicy-squid
squid: doc/radosgw: update Squid S3 action list
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Zac Dover [Fri, 10 May 2024 11:12:17 +0000 (21:12 +1000)]
Merge pull request #57335 from zdover23/wip-doc-2024-05-08-backport-57298-to-squid
squid: doc/mgr: edit "Overview" in dashboard.rst
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Zac Dover [Fri, 10 May 2024 11:05:46 +0000 (21:05 +1000)]
Merge pull request #57295 from zdover23/wip-doc-2024-05-07-backport-57273-to-squid
squid: doc/mgr: edit "Resolve IP address to hostname before redirect"
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Leonid Usov [Thu, 9 May 2024 12:29:33 +0000 (15:29 +0300)]
doc/cephfs: expand the role of quiesce in consistent backups
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
Fixes: https://tracker.ceph.com/issues/65881
(cherry picked from commit
34ec2a4c6a065028d593b1e959600a3ce87541a8 )
Ilya Dryomov [Fri, 10 May 2024 10:35:11 +0000 (12:35 +0200)]
Merge pull request #57310 from idryomov/wip-65624-squid
squid: pybind/rbd: expose CLONE_FORMAT and FLATTEN image options
Reviewed-by: Ramana Raja <rraja@redhat.com>
Ilya Dryomov [Fri, 10 May 2024 10:35:00 +0000 (12:35 +0200)]
Merge pull request #57307 from idryomov/wip-65487-squid
squid: rbd-mirror: clean up stale pool replayers and callouts better
Reviewed-by: Ramana Raja <rraja@redhat.com>
Ilya Dryomov [Fri, 10 May 2024 10:34:46 +0000 (12:34 +0200)]
Merge pull request #57031 from idryomov/wip-65481-squid
squid: qa: fix krbd_msgr_segments and krbd_rxbounce failing on 8.stream
Reviewed-by: Ramana Raja <rraja@redhat.com>
Avan [Fri, 10 May 2024 09:36:49 +0000 (15:06 +0530)]
Merge pull request #57370 from weirdwiz/wip-65879-squid
squid: exporter: handle exceptions gracefully
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Juan Miguel Olmo <jolmomar@redhat.com>
Divyansh Kamboj [Tue, 30 Apr 2024 07:44:10 +0000 (13:14 +0530)]
exporter: handle exceptions gracefully
ceph exporter crahes, and fails to handle exceptions in
dump_asok_metrics(). add try and catch blocks to handle the exceptions gracefully.
Signed-off-by: Divyansh Kamboj <dkamboj@redhat.com>
(cherry picked from commit
e442ee479987f339afdc333582b6b64c66ba6846 )
Laura Flores [Wed, 8 May 2024 23:05:43 +0000 (18:05 -0500)]
Merge pull request #57303 from ronen-fr/wip-rf-reinstate-q-squid
squid:osd/scrub: reinstate scrub reservation queuing
Zac Dover [Wed, 8 May 2024 22:10:25 +0000 (08:10 +1000)]
doc/radosgw: update Squid S3 action list
Update the list of S3 actions supported in the Squid release of Ceph.
Note: The list of S3 actions supported in Squid is not the list of S3
actions supported in Reef or in Quincy.
Signed-off-by: Zac Dover <zac.dover@proton.me>
Ilya Dryomov [Wed, 8 May 2024 21:28:50 +0000 (23:28 +0200)]
Merge pull request #57092 from idryomov/wip-65573-squid
squid: librbd: make group and group snapshot IDs more random
Reviewed-by: Mykola Golub <mgolub@suse.com>
Casey Bodley [Wed, 8 May 2024 20:23:20 +0000 (21:23 +0100)]
Merge pull request #57242 from cbodley/wip-65767-squid
squid: rgw/multisite-notification: retry storing bucket notification attrs for ECANCELED(ConcurrentModification) errors.
Reviewed-by: Krunal Chheda <kchheda3@bloomberg.net>
Laura Flores [Wed, 8 May 2024 17:52:34 +0000 (12:52 -0500)]
Merge pull request #57006 from rzarzynski/wip-65185-squid
squid: osd/PGBackend::be_scan_list: only call stat, getattrs once per object
Casey Bodley [Wed, 8 May 2024 16:47:08 +0000 (17:47 +0100)]
Merge pull request #57300 from cbodley/wip-65821-squid
squid: rgw: fix CompleteMultipart error handling regression
Reviewed-by: Ali Masarwa <amasarwa@redhat.com>
Casey Bodley [Wed, 8 May 2024 15:13:35 +0000 (16:13 +0100)]
Merge pull request #57104 from soumyakoduri/wip-skoduri-squid
[squid] rgw/lc: advance head if the current entry doesn't exist
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Casey Bodley [Wed, 8 May 2024 15:13:23 +0000 (16:13 +0100)]
Merge pull request #57231 from galsalomon66/wip-65244-squid
squid: rgw/s3select: s3select response handler refactor
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Aashish Sharma [Wed, 8 May 2024 09:24:47 +0000 (14:54 +0530)]
Merge pull request #57254 from aaSharma14/wip-65790-squid
squid: mgr/dashboard: add prometheus federation config for multi-cluster monitoring
Reviewed-by: Nizamudeen A <nia@redhat.com>
Xuehan Xu [Fri, 15 Mar 2024 11:48:33 +0000 (19:48 +0800)]
test/crimson/sesastore/test_block: add constructor to construct
non-fully-loaded TestBlocks
Before this commit, all TestBlocks are fully-loaded whether they do have
data or not.
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
61d7f8821fa06cf48911230228687abdf747dba2 )
Zhang Song [Tue, 26 Mar 2024 06:15:35 +0000 (14:15 +0800)]
crimson/os/seastore: fix use after free error
Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
(cherry picked from commit
1b5ca67ef8e9de48221d52b6e46f89aad1a731eb )
Yingxin Cheng [Wed, 20 Mar 2024 07:25:33 +0000 (15:25 +0800)]
crimson/os/pg_map: allow multiple shards to create new pg mappings at the same time
Also:
* Better detections in case of inconsistent racings, such as:
* The new mapping is creating towards different cores.
* Mapping creation is racing with its eracing.
* Multiple shards are erasing the same mapping at the same time.
* Add more logs to debug in case of unexpected issues.
Fixes: https://tracker.ceph.com/issues/64934
Fixes: https://tracker.ceph.com/issues/64009
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
(cherry picked from commit
2422817b7578da44090ea5e2f540c505bbce1412 )
Yingxin Cheng [Wed, 20 Mar 2024 07:20:57 +0000 (15:20 +0800)]
crimson/osd/shard_services: fix log
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
(cherry picked from commit
de2e66723586d2e9c5fd838e5199547b0d2d5f4f )
Yingxin Cheng [Tue, 19 Mar 2024 03:05:11 +0000 (11:05 +0800)]
crimson/osd/pg_map/PGShardMapping: cleanups
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
(cherry picked from commit
b35ed71e23ac5eabfed1c47361ee499bab77cd14 )
Samuel Just [Mon, 18 Mar 2024 23:26:36 +0000 (23:26 +0000)]
crimson/osd/osd.h: declare osdmap after OSDSingletonState
Otherwise, destructing the osdmap cached_map_t tries to manipulate
OSDSingletonState::osdmaps after it has already been destroyed.
Fixes: https://tracker.ceph.com/issues/64935
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
b623594c44df1c7d75fa7a8d4e8b90f8829d249f )
myoungwon oh [Mon, 18 Mar 2024 06:48:07 +0000 (06:48 +0000)]
crimson/os/seastore: cache metadata during trimming to prevent from disk read
I encountered continous disk reads during trimming even though there are sufficient
cache available, in 4K random write test with RBM (RBD).
This is because metadata is note cached if its source is background transaction
within touch_extent(). So, seastore, including the trimming process, needs to
constantly retrieve metadata (e.g., BACKREF_LEAF).
Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
(cherry picked from commit
7f253ce5aa98018b5b209fd6e062078d151ad567 )
Samuel Just [Wed, 31 Jan 2024 23:34:34 +0000 (15:34 -0800)]
crimson/common: add coroutine integration for crimson futures
Adds coroutine machinery for crimson errorated and interruptible futures.
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
1126ec3cf6285abbf6a875ab27daff397f09220b )
Samuel Just [Sun, 4 Feb 2024 06:47:04 +0000 (22:47 -0800)]
crimson/common: expose unsafe_get0 for interruptible errorated futures
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
11698a6da9d518329003a90777b0ef31454d2bfd )
Samuel Just [Sun, 4 Feb 2024 06:46:34 +0000 (22:46 -0800)]
crimson/common: add interruptible_errorator::make_interruptible
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
52800dcee08164f9d17d9d293e01cce173670f63 )
Samuel Just [Thu, 8 Feb 2024 01:25:38 +0000 (17:25 -0800)]
crimson/.../errorator: expose get_exception
Useful for intentionally ignoring an exceptional future. Otherwise,
seastar warns.
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
0afd9fa4326d4e7fe5966347a37623379072fd98 )
Samuel Just [Wed, 31 Jan 2024 23:33:33 +0000 (15:33 -0800)]
crimson/common/interruptible_future: add interruptor::future convenience declaration
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
1f152bf9861dd04ace70a62ba8a82c33136b5fb0 )
Samuel Just [Wed, 31 Jan 2024 23:32:30 +0000 (15:32 -0800)]
crimson/common: expose set_coroutine for crimson future specializations/wrappers
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
53c4acde1d6b00ed703a71c3137bee92df4be46a )
Samuel Just [Thu, 16 Mar 2023 20:22:22 +0000 (20:22 +0000)]
test/crimson/test_errorator: move tests into TEST_F declarations
Slightly easier to read this way.
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
3f377f013c690d9c17685967f1ebc4dc2adbf838 )
Samuel Just [Tue, 6 Feb 2024 04:45:04 +0000 (20:45 -0800)]
crimson/.../ops_executor: no need to warn in normal pg op execution path
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
e72f1779f4505616253cba7c41c10aa2b772adaa )
Samuel Just [Wed, 7 Feb 2024 01:19:43 +0000 (17:19 -0800)]
crimson/.../errorator: simplify maybe_handle_error_t::handle()
Using FuturatorT::invoke covers both of the last two cases and also
correctly deals with handlers that return interrupible futures.
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
979c1916507092591469f8ea3b0a0440f2b88066 )
Zac Dover [Mon, 6 May 2024 15:16:51 +0000 (01:16 +1000)]
doc/mgr: edit "Overview" in dashboard.rst
Edit and update the "Overview" section in doc/mgr/dashboard.rst.
Signed-off-by: Zac Dover <zac.dover@proton.me>
Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com>
Signed-off-by: Zac Dover <zac.dover@proton.me>
(cherry picked from commit
6cf06c60f7c3f87707c7dc47cde2346cec7cf00f )
Xuehan Xu [Fri, 1 Mar 2024 02:32:32 +0000 (10:32 +0800)]
crimson/os/seastore: adjust SeaStore::_omap_set_kvs() params
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
9852f4d97e7f4ff6a83b90bf7fa5a15b59e4342a )
Xuehan Xu [Wed, 6 Mar 2024 05:49:43 +0000 (13:49 +0800)]
crimson/os/seastore/collection_manager: allow empty-delta-buffer
collection nodes
Fixes: https://tracker.ceph.com/issues/64728
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
e8b9ab73f409d5d9a51100f5dd9922dfcab5dc0e )
myoungwon oh [Wed, 6 Mar 2024 00:46:37 +0000 (00:46 +0000)]
crimson/os/seastore: allow to remap the dirty extent
Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
(cherry picked from commit
728e564f6172d45310646b690c7c259a32520b49 )
Matan Breizman [Mon, 12 Feb 2024 09:26:36 +0000 (09:26 +0000)]
osd/SnapMapper: Crimson - fix OSDriver::get_next
There are other omap_keys that we may return which are not
SnapMapper entries (_biginfo, _epoch, _fastinfo etc.).
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
(cherry picked from commit
8fd9b037f5802ec8dab4d69f11435e4217dff76a )
Matan Breizman [Mon, 12 Feb 2024 09:32:46 +0000 (09:32 +0000)]
osd/SnapMapper: is_mapping() to be public
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
(cherry picked from commit
d489704acdc3e6abaa337245de8ea312cefe6516 )
Matan Breizman [Mon, 12 Feb 2024 09:24:13 +0000 (09:24 +0000)]
osd/SnapMapper: Crimson - remove LINE log lines
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
(cherry picked from commit
7a9cc2dcce50fb1f4c04421b53c83030f3087f85 )
Zhang Song [Mon, 4 Mar 2024 03:15:52 +0000 (11:15 +0800)]
osd/SnapManager: fix std::string constructed from 0
Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
(cherry picked from commit
4c62ae3dccabfd96a50472b05911b4f9cd4743ab )
myoungwon oh [Tue, 5 Mar 2024 06:53:52 +0000 (06:53 +0000)]
crimson/os/seastore: make less verbose log when testing performance on RBM
Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
(cherry picked from commit
339a635503933e24cdd6e723b862a78052aed4fa )
Ilya Dryomov [Wed, 1 May 2024 13:49:54 +0000 (15:49 +0200)]
test/pybind: drop unnecessary data_pool=None arguments
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
555601796000d83a37324c9f9b065d9c3aa48b8e )
Ilya Dryomov [Wed, 1 May 2024 13:49:51 +0000 (15:49 +0200)]
pybind/rbd: adjust error message in deep_copy()
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
5986217c79f2fe01e21f6910affa896bd2516f02 )
Ilya Dryomov [Wed, 1 May 2024 13:49:47 +0000 (15:49 +0200)]
pybind/rbd: expose RBD_IMAGE_OPTION_FLATTEN option
It takes effect with deep_copy() and migration_prepare().
Fixes: https://tracker.ceph.com/issues/65624
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
39f207ff65a4eb10f67a2d4a8a4af1bad0d2e412 )
Ilya Dryomov [Sun, 28 Apr 2024 17:19:22 +0000 (19:19 +0200)]
pybind/rbd: expose RBD_IMAGE_OPTION_CLONE_FORMAT option
It takes effect with clone(), deep_copy() and migration_prepare().
Fixes: https://tracker.ceph.com/issues/65624
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
39fafe74625423e5d23a5f1bbd74e58ef9055573 )
Ilya Dryomov [Mon, 6 May 2024 06:16:01 +0000 (08:16 +0200)]
qa/workunits/rbd: wait for replaying status in bootstrap tests
wait_for_replay_complete() doesn't wait for image status to get
updated. This didn't matter previously because these tests are run on
two different pools and nothing else was following.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
d1d848276f0a33b20482321088c8c7470a84d0b3 )
Ilya Dryomov [Wed, 24 Apr 2024 10:45:27 +0000 (12:45 +0200)]
rbd-mirror: remove callout when destroying pool replayer
If a pool replayer is removed in an error state (e.g. after failing to
connect to the remote cluster), its callout should be removed as well.
Otherwise, the error would persist causing "daemon health: ERROR"
status to be reported even after a new pool replayer is created and
started successfully.
Fixes: https://tracker.ceph.com/issues/65487
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
b7e79642d53c1802ae1202c3f013677fcfd26b1b )
Ilya Dryomov [Wed, 24 Apr 2024 12:42:38 +0000 (14:42 +0200)]
rbd-mirror: shut down and remove pool replayer if peer changes
The code in Mirror::update_pool_replayers() responsible for shutting
down and removing stale pool replayers kicks in only in case the peer
is removed, but not if the peer changes. However, the code responsible
for (re)starting pool replayers in the same method _does_ create and
start a new pool replayer in that case. As a result, we can end up
with nearly identical pool replayers running at the same time, hogging
OS resources and confusing instance_id tracking logic and mirror status
reporting at the very least.
The root cause is that PeerSpec is matched normally (i.e. based on all
fields) when it comes to m_pool_replayers, and based only on UUID when
it comes to pool_peers. This was missed in commit
5463e1a1e1b7
("rbd-mirror: extract optional peer mon_host/key values from MON").
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
def93cb0ad93e3e27d7c4534f68c95ef922ab750 )
Rongqi Sun [Tue, 7 May 2024 01:01:53 +0000 (18:01 -0700)]
Merge pull request #57285 from Matan-B/wip-55699-squid
squid: doc/crimson: cleanup duplicate seastore description
Ronen Friedman [Mon, 6 May 2024 19:43:41 +0000 (22:43 +0300)]
squid:osd/scrub: reinstate scrub reservation queuing
Re-enabling the Reserver-based scrub queuing (undoing
https://github.com/ceph/ceph/pull/56750), as all known issues
related to the reservation queuing have been fixed and back-ported.
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
Casey Bodley [Fri, 3 May 2024 19:43:39 +0000 (15:43 -0400)]
rgw: move publish_complete() back to RGWCompleteMultipart::execute()
move publish_complete() and meta_obj->delete_object() back to execute()
so they only run on success. this allows several member variables to
move back to execute()'s stack as well
Fixes: https://tracker.ceph.com/issues/65746
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit
ebb37c7bb3aee4663220054c6516164bf046fa8c )
Casey Bodley [Fri, 3 May 2024 19:29:00 +0000 (15:29 -0400)]
rgw: CompleteMultipart uses s->object for Notification
get_notification() should be associated with the target object
s->object. the meta_obj has the wrong object name, so required passing
s->object->get_name() as an extra argument
importantly, Notification no longer depends on the lifetime of meta_obj
to avoid a dangling pointer, while the lifetime of s->object is guaranteed
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit
91dc7f3be945dccd8f59e070e9bc43a2a5df12db )
Casey Bodley [Fri, 3 May 2024 19:17:48 +0000 (15:17 -0400)]
rgw: CompleteMultipart uses s->object instead of target_obj
most requests operate directly on s->object. there's no reason to
allocate a separate target_obj for the same purpose
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit
d09b8ab2e077ceb6a0c6dfb99ce1b45d63a28be4 )
Zac Dover [Sun, 5 May 2024 19:12:55 +0000 (05:12 +1000)]
doc/mgr: edit "Resolve IP address to hostname before redirect"
Edit the section "Resolve IP address to hostname before redirect" in
doc/mgr/dashboard.rst.
Signed-off-by: Zac Dover <zac.dover@proton.me>
(cherry picked from commit
e0838daa9bc1d549a8da2b21608153c77b15455a )
Aashish Sharma [Mon, 6 May 2024 13:45:50 +0000 (19:15 +0530)]
Merge pull request #56947 from adk3798/wip-65539-squid
squid: ceph-mixin: Update mixin to include alerts for the nvmeof gateway(s)
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Xuehan Xu [Tue, 27 Feb 2024 08:27:58 +0000 (16:27 +0800)]
crimson/os/seastore: also remove xattrs when removing onodes
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
8cc25049a897ebafccd2b9bded6d09300575ef2c )
Xuehan Xu [Tue, 27 Feb 2024 08:18:57 +0000 (16:18 +0800)]
crimson/os/seastore: get_attrs should return all attrs
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
abdae14dd017dc2fce6e6c2ed014d7c024864dfc )
Xuehan Xu [Tue, 27 Feb 2024 08:06:02 +0000 (16:06 +0800)]
crimson/os/seastore: attr related debug outputs
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
c841876cb1ec8cf576083cf2e6c076924e9daf4d )
Xuehan Xu [Thu, 22 Feb 2024 09:03:43 +0000 (17:03 +0800)]
crimson/os/seastore: fix wrong-positioned asserts
Fixes: https://tracker.ceph.com/issues/64535
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
b469cbb507675108cecfcfd9da3bd5144deabcf9 )
Xuehan Xu [Thu, 1 Feb 2024 05:18:38 +0000 (13:18 +0800)]
crimson/osd/shard_services: make sure that only up/acting members can
create pgs
Fixes: https://tracker.ceph.com/issues/64282
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
ddac5d1cb85f182e5984929b667f4dc56ea97984 )
Xuehan Xu [Thu, 1 Feb 2024 04:55:44 +0000 (12:55 +0800)]
crimson/osd: correct variable naming
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
(cherry picked from commit
7000cbf82f40e0997c815a35a3a53f32e1afcef1 )
Rongqi Sun [Thu, 22 Feb 2024 02:41:43 +0000 (10:41 +0800)]
doc/crimson: cleanup duplicate seastore description
Signed-off-by: Rongqi Sun <sunrongqi@huawei.com>
(cherry picked from commit
8d766c57173cf6bdea0d8fcfa8fa3c1b61fd10ef )
Matan Breizman [Mon, 19 Feb 2024 16:11:53 +0000 (16:11 +0000)]
common/buffer_seastar: move to crimson/crimson/buffer_seastar
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
(cherry picked from commit
c8d8f739f8c3d0b260547e9e788ae2e191b3f446 )
Matan Breizman [Mon, 19 Feb 2024 12:24:52 +0000 (12:24 +0000)]
common/buffer_seastar: fix alien threads memory
The underlying raw_seastar_foreign_ptr::ptr is allocated from seastar.
This ptr is wrapped with seastar::foreign_ptr:
```
/// \c foreign_ptr<> wraps smart pointers -- \ref seastar::shared_ptr<>,
/// or similar, and remembers on what core this happened.
/// When the \c foreign_ptr<> object is destroyed, it sends a message to
/// the original core so that the wrapped object can be safely destroyed.
```
The issue is that once the pointer is de-allocated from an alien thread
it is unable to send a message to the original core.
Fix this issue by making use of seastar::alien integration with non-seastar applications.
In case ~raw_seastar_foreign_ptr() will be called from an alien thread, we will submit *and wait*
for the memory to be released from the origin core.
Fixes: https://tracker.ceph.com/issues/64086
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
(cherry picked from commit
c714c3c4f92994413e34a5900492c8987c85669e )
Matan Breizman [Mon, 19 Feb 2024 12:22:16 +0000 (12:22 +0000)]
crimson/osd/main: enable multicore client msgr
Taken from:
f78e99c05943ea336a3fe2cc1568fea81e6a9855
Co-authored-by: Yingxin Cheng <yingxin.cheng@intel.com>
Co-authored-by: Chunmei Liu <chunmei.liu@intel.com>
Co-authored-by: Xinyu Huang <xinyu.huang@intel.com>
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
(cherry picked from commit
68400ff5450db1fd2c582ef016c9859829dbdf89 )
Samuel Just [Wed, 21 Feb 2024 00:43:16 +0000 (16:43 -0800)]
crimson/.../shard_services.cc: pass by reference from do_with
Capturing the value passed by do_with by value causes later captures
by reference to be invalid past the lifetime of the lambda frame.
Fixes: https://tracker.ceph.com/issues/64513
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
e03495dca75be80f642453782ab7793c3c72712e )