]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
12 months agoqa/tasks/cephadm: drop --cluster and sudo in create_rbd_pool() 58507/head
Ilya Dryomov [Wed, 10 Jul 2024 09:53:05 +0000 (11:53 +0200)]
qa/tasks/cephadm: drop --cluster and sudo in create_rbd_pool()

The cluster (name) is already specified in the arguments passed to
_shell() and this command doesn't need privileges.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
12 months agoqa/tasks/cephadm: don't wait for OSDs in create_rbd_pool()
Ilya Dryomov [Wed, 10 Jul 2024 09:02:47 +0000 (11:02 +0200)]
qa/tasks/cephadm: don't wait for OSDs in create_rbd_pool()

This fails because teuthology.wait_until_osds_up() wants to use
adjust-ulimits wrapper which isn't available in "cephadm shell"
environment.  The whole thing is also redundant because cephadm task
is supposed to wait for OSDs to come up earlier, in ceph_osds().

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
12 months agoqa/tasks: initialize rbd pool instead of just tagging it
Ilya Dryomov [Wed, 10 Jul 2024 07:10:02 +0000 (09:10 +0200)]
qa/tasks: initialize rbd pool instead of just tagging it

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
12 months agoqa: krbd_data_pool.sh: account for rbd_trash object
Ilya Dryomov [Wed, 10 Jul 2024 07:10:02 +0000 (09:10 +0200)]
qa: krbd_data_pool.sh: account for rbd_trash object

... created since commit 0bcb5cfce9a2 ("librbd/image: create rbd_trash
object during RBD pool initialization").

Fixes: https://tracker.ceph.com/issues/66886
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
12 months agoMerge pull request #58466 from Svelar/test_cookie_cleanup
Ilya Dryomov [Tue, 9 Jul 2024 11:33:01 +0000 (13:33 +0200)]
Merge pull request #58466 from Svelar/test_cookie_cleanup

test/librbd: clean up unused TEST_COOKIE variable

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
12 months agoMerge pull request #55906 from pereman2/synthetic-seed
Adam Kupczyk [Tue, 9 Jul 2024 11:23:08 +0000 (13:23 +0200)]
Merge pull request #55906 from pereman2/synthetic-seed

os/bluestore: store_test reproducible tests with seeds

12 months agoMerge pull request #57890 from aclamk/fix-aclamk-66361
Adam Kupczyk [Tue, 9 Jul 2024 11:21:39 +0000 (13:21 +0200)]
Merge pull request #57890 from aclamk/fix-aclamk-66361

os/bluestore: Fix ExtentDecoderPartial::_consume_new_blob

12 months agoMerge pull request #57369 from YiteGu/bluestore-offline-trim
Adam Kupczyk [Tue, 9 Jul 2024 11:20:19 +0000 (13:20 +0200)]
Merge pull request #57369 from YiteGu/bluestore-offline-trim

tools/bluestore: Add command 'trim' to ceph-bluestore-tool

12 months agoMerge pull request #54327 from pereman2/buffer-space-onode
Adam Kupczyk [Tue, 9 Jul 2024 11:14:54 +0000 (13:14 +0200)]
Merge pull request #54327 from pereman2/buffer-space-onode

os/bluestore: BufferSpace per Onode

12 months agotest/ librbd: clean up unused 'TEST_COOKIE' 58466/head
Rongqi Sun [Tue, 9 Jul 2024 02:55:27 +0000 (02:55 +0000)]
test/ librbd: clean up unused 'TEST_COOKIE'

Clean them up because
```
/home/jenkins-build/build/workspace/ceph-pull-requests-arm64/src/test/librbd/exclusive_lock/test_mock_PreAcquireRequest.cc:47:26: error: unused variable 'TEST_COOKIE' [-Werror,-Wunused-const-variable]
static const std::string TEST_COOKIE("auto 123");
                         ^
1 error generated.
```

Ref: https://jenkins.ceph.com/job/ceph-pull-requests-arm64/59242/consoleFull#-5120798632a811ea2-3e7b-466b-84b4-d13df7e35809

Signed-off-by: Rongqi Sun <sunrongqi@huawei.com>
12 months agoMerge pull request #58303 from rhcs-dashboard/nfs-export-subvol
Nizamudeen A [Tue, 9 Jul 2024 07:35:12 +0000 (13:05 +0530)]
Merge pull request #58303 from rhcs-dashboard/nfs-export-subvol

mgr/dashboard: nfs export enhancement for CEPHFS

Reviewed-by: afreen23 <NOT@FOUND>
Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
12 months agoMerge pull request #58462 from rkhudov/src-test-objecstore-allocism-ops_replayer_fix_...
Pere Diaz Bou [Tue, 9 Jul 2024 05:50:27 +0000 (07:50 +0200)]
Merge pull request #58462 from rkhudov/src-test-objecstore-allocism-ops_replayer_fix_import_rados_buffer_fwd

src/test/objectstore/allocism/ops_replayer.cc: fix rados import

Reviewed-by: Svelar <NOT@FOUND>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
12 months agoMerge PR #53301 into main
Venky Shankar [Tue, 9 Jul 2024 05:38:26 +0000 (11:08 +0530)]
Merge PR #53301 into main

* refs/pull/53301/head:
qa: adding test for preventing scrub when mds is inactive
mds: prevent scrub start for standby-replay MDS

Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Milind Changire <mchangir@redhat.com>
12 months agosrc/test/objectstore/allocism/ops_replayer.cc: fix rados import 58462/head
rkhudov [Mon, 8 Jul 2024 18:38:04 +0000 (19:38 +0100)]
src/test/objectstore/allocism/ops_replayer.cc: fix rados import

src/test/objectstore/allocism/ops_replayer.cc: fix rados import

Signed-off-by: rkhudov <rkhudov@gmail.com>
12 months agoMerge pull request #58454 from spdfnet/docs
Anthony D'Atri [Mon, 8 Jul 2024 12:51:52 +0000 (08:51 -0400)]
Merge pull request #58454 from spdfnet/docs

doc/cephfs: fix typo

12 months agoMerge pull request #57353 from Svelar/asan_shec
Kefu Chai [Mon, 8 Jul 2024 12:05:45 +0000 (20:05 +0800)]
Merge pull request #57353 from Svelar/asan_shec

crush/builder: free 'crush_rule' before return

Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
12 months agoMerge pull request #55917 from Aequitosh/fix-ceph-crash-permissions
Kefu Chai [Mon, 8 Jul 2024 11:57:38 +0000 (19:57 +0800)]
Merge pull request #55917 from Aequitosh/fix-ceph-crash-permissions

debian: recursively adjust permissions of /var/lib/ceph/crash

Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
12 months agoqa: adding test for preventing scrub when mds is inactive 53301/head
neeraj pratap singh [Tue, 10 Oct 2023 05:55:31 +0000 (11:25 +0530)]
qa: adding test for preventing scrub when mds is inactive

Fixes: https://tracker.ceph.com/issues/62537
Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
12 months agoMerge pull request #58423 from pereman2/scrapper-replayer-argparse
Pere Diaz Bou [Mon, 8 Jul 2024 08:27:29 +0000 (10:27 +0200)]
Merge pull request #58423 from pereman2/scrapper-replayer-argparse

test/allocsim: ops scrapper arg parsing

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
12 months agodoc/cephfs: fix typo 58454/head
spdfnet [Mon, 8 Jul 2024 08:03:28 +0000 (09:03 +0100)]
doc/cephfs: fix typo

blanacer -> balancer

Signed-off-by: spdfnet <32593931+spdfnet@users.noreply.github.com>
12 months agoMerge pull request #58114 from rhcs-dashboard/add-configuration-page-rgw
Nizamudeen A [Mon, 8 Jul 2024 07:57:16 +0000 (13:27 +0530)]
Merge pull request #58114 from rhcs-dashboard/add-configuration-page-rgw

mgr/dashboard: add a new configuration page in side nav bar  Object > Configuration

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
12 months agoMerge pull request #57864 from afreen23/wip-nvmeof-gateways
Ankush Behl [Mon, 8 Jul 2024 06:08:50 +0000 (11:38 +0530)]
Merge pull request #57864 from afreen23/wip-nvmeof-gateways

mgr/dashboard: Introduce NVMe/TCP navigation

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
12 months agomgr/dashboard: add a new configuration page in side nav bar Object > 58114/head
Aashish Sharma [Tue, 18 Jun 2024 11:13:07 +0000 (16:43 +0530)]
mgr/dashboard: add a new configuration page in side nav bar  Object >
Configuration

Fixes: https://tracker.ceph.com/issues/66543
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
12 months agoMerge pull request #57828 from xxhdx1985126/wip-seastore-btree-better-ut-asserts
Yingxin [Mon, 8 Jul 2024 02:59:01 +0000 (10:59 +0800)]
Merge pull request #57828 from xxhdx1985126/wip-seastore-btree-better-ut-asserts

crimson/os/seastore/btree: improve lba pointer related UT checks

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
12 months agoMerge pull request #58356 from xxhdx1985126/wip-seastore-onode-name
Yingxin [Mon, 8 Jul 2024 02:57:43 +0000 (10:57 +0800)]
Merge pull request #58356 from xxhdx1985126/wip-seastore-onode-name

crimson/os/seastore/onode: add hobject_t into Onode

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
12 months agoMerge pull request #58179 from cbodley/wip-rgw-assert-async
Casey Bodley [Fri, 5 Jul 2024 14:50:45 +0000 (15:50 +0100)]
Merge pull request #58179 from cbodley/wip-rgw-assert-async

rgw: test that no asio threads are blocked on null_yield

Reviewed-by: Adam Emerson <aemerson@redhat.com>
12 months agoMerge pull request #58288 from cbodley/wip-66705
Casey Bodley [Fri, 5 Jul 2024 14:50:19 +0000 (15:50 +0100)]
Merge pull request #58288 from cbodley/wip-66705

rgw: fix multipart get part when count==1

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
12 months agoMerge pull request #56834 from galsalomon66/fix_error_message_flow
Casey Bodley [Fri, 5 Jul 2024 14:03:51 +0000 (15:03 +0100)]
Merge pull request #56834 from galsalomon66/fix_error_message_flow

rgw/s3select : fix for error flow. add an option to disable s3select-request.

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
12 months agomgr/dashboard: nfs export enhancement for CEPHFS 58303/head
Avan Thakkar [Thu, 27 Jun 2024 10:06:42 +0000 (15:36 +0530)]
mgr/dashboard: nfs export enhancement for CEPHFS

Fixes: https://tracker.ceph.com/issues/66718
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
12 months agoMerge pull request #58199 from tchaikov/wip-python3.9
Kefu Chai [Fri, 5 Jul 2024 13:30:17 +0000 (21:30 +0800)]
Merge pull request #58199 from tchaikov/wip-python3.9

mgr: use un-deprecated APIs to initialize Python interpretor

Reviewed-by: Adam King <adking@redhat.com>
12 months agotest/allocsim: ops scrapper arg parsing 58423/head
Pere Diaz Bou [Thu, 4 Jul 2024 10:20:07 +0000 (12:20 +0200)]
test/allocsim: ops scrapper arg parsing

```
fedora :: pere/scrapper-replayer/build 130 » ./bin/replayer -h
All options:

Options:
  -h [ --help ]                 produce help message
  -i arg (=input.txt)           Input file (output of op_scraper.py)
  --ceph-conf arg (=ceph.conf)  Path to ceph conf
  --io-depth arg (=64)          I/O depth
  --parser-threads arg (=16)    Number of parser threads
  --worker-threads arg (=16)    Number of I/O worker threads
  --pool arg (=test_pool)       Pool to use for I/O
```

Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com>
12 months agomgr/dashboard: fix service form count bugs 57864/head
Afreen Misbah [Sat, 22 Jun 2024 02:18:33 +0000 (07:48 +0530)]
mgr/dashboard: fix service form count bugs

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

- for services which do not have a count set default count to be null, otherwise the previous selected service's count is used which is wrong
- make count null when label is selected for placement

Signed-off-by: Afreen Misbah <afreen23.git@gmail.com>
12 months agomgr/dashboard: Introduce NVMe/TCP navigation
Afreen [Fri, 31 May 2024 07:54:27 +0000 (13:24 +0530)]
mgr/dashboard: Introduce NVMe/TCP navigation

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

- adds NVMe/TCP tab under Block nav
- adds overview page for NVMe/TCP nav
- overview page lists gateways
- add default error page when no nvmeof service running
- added unit tests
- fixes service page e2e test

Signed-off-by: Afreen <afreen23.git@gmail.com>
12 months agoMerge pull request #58427 from Matan-B/wip-matanb-seastar-string
Adam Kupczyk [Fri, 5 Jul 2024 07:54:11 +0000 (09:54 +0200)]
Merge pull request #58427 from Matan-B/wip-matanb-seastar-string

seastar: fix makecheck error: missing 'typename'

12 months agoMerge pull request #58414 from cbodley/wip-cmake-object-library-legacy-headers
Casey Bodley [Thu, 4 Jul 2024 21:31:06 +0000 (22:31 +0100)]
Merge pull request #58414 from cbodley/wip-cmake-object-library-legacy-headers

cmake: more object libraries depend on legacy-option-headers

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
12 months agoMerge pull request #58428 from cbodley/wip-rm-boost-redis-again
Casey Bodley [Thu, 4 Jul 2024 20:16:15 +0000 (21:16 +0100)]
Merge pull request #58428 from cbodley/wip-rm-boost-redis-again

submodule: remove the boost_redis submodule again

Reviewed-by: Adam Emerson <aemerson@redhat.com>
12 months agoMerge pull request #58434 from cbodley/wip-42888
Casey Bodley [Thu, 4 Jul 2024 20:12:22 +0000 (21:12 +0100)]
Merge pull request #58434 from cbodley/wip-42888

doc/rgw: update s3 authentication

Reviewed-by: Zac Dover <zac.dover@proton.me>
12 months agodoc/rgw: update s3 authentication 58434/head
Casey Bodley [Thu, 4 Jul 2024 19:17:52 +0000 (15:17 -0400)]
doc/rgw: update s3 authentication

authentication.rst described the steps to generate a v2 signature,
without reference to aws docs. replace that with sections that reference
aws docs for v2 and v4 signatures. list which values of the request
header x-amz-content-sha256 are supported for v4

Fixes: https://tracker.ceph.com/issues/42888
Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agoMerge pull request #58429 from cbodley/wip-rgw-xxhash-debug
Casey Bodley [Thu, 4 Jul 2024 19:38:58 +0000 (20:38 +0100)]
Merge pull request #58429 from cbodley/wip-rgw-xxhash-debug

cmake: work around xxhash 'inlining failed' errors in debug builds

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agoMerge pull request #58368 from zdover23/wip-doc-2024-07-01-rados-config-mon-lookup-dns
Zac Dover [Thu, 4 Jul 2024 18:25:25 +0000 (04:25 +1000)]
Merge pull request #58368 from zdover23/wip-doc-2024-07-01-rados-config-mon-lookup-dns

doc/rados: document manually passing search domain

Reviewed-by: Lander Duncan <landerduncan@nyu.edu>
Reviewed-by: Cole Mitchell <cole.mitchell.ceph@gmail.com>
12 months agocmake: work around xxhash 'inlining failed' errors in debug builds 58429/head
Casey Bodley [Wed, 26 Jun 2024 22:17:13 +0000 (18:17 -0400)]
cmake: work around xxhash 'inlining failed' errors in debug builds

rgw enables the XXH_INLINE_ALL define, but this causes debug builds to
fail with errors like "inlining failed in call to ‘always_inline’"

for build types Debug and RelWithDebInfo, add extra define
XXH_NO_INLINE_HINTS to remove the always_inline hints causing this error

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agosubmodule: remove the boost_redis submodule again 58428/head
Casey Bodley [Thu, 4 Jul 2024 16:20:27 +0000 (12:20 -0400)]
submodule: remove the boost_redis submodule again

b6d585645ca7d469fd9fe453ff37ca6bdb914d98 accidentally added back the
boost_redis submodule that was removed in 862246cdefc12acfbd2711c7677a252c59634c9d

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agoMerge pull request #58387 from rhcs-dashboard/rgw-sync-policy-crud-ops
Nizamudeen A [Thu, 4 Jul 2024 14:48:00 +0000 (20:18 +0530)]
Merge pull request #58387 from rhcs-dashboard/rgw-sync-policy-crud-ops

mgr/dashboard: RGW sync policy crud operations

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
12 months agoseastar: fix makecheck error: missing 'typename' 58427/head
Matan Breizman [Thu, 4 Jul 2024 13:39:09 +0000 (16:39 +0300)]
seastar: fix makecheck error: missing 'typename'

update seastar submodule to wip-matanb-seastar-july4
Reverting https://github.com/scylladb/seastar/commit/8a3dc425dd9bff7a00ffa3345768e01b1a24825f

This revert is pushed to not block all other PRs that are failing make
check due to this.

Fixes: https://tracker.ceph.com/issues/66834
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
12 months agoMerge pull request #58408 from AliMasarweh/wip-alimasa-http-to-kafka
Ali Masarwa [Thu, 4 Jul 2024 13:17:49 +0000 (16:17 +0300)]
Merge pull request #58408 from AliMasarweh/wip-alimasa-http-to-kafka

RGW|BN : change endpoint for http failing tests

Reviewed-by: yuvalif<ylifshit@redhat.com>
12 months agoMerge pull request #57716 from rhcs-dashboard/add-rgw-multisite-wizard-api
Aashish Sharma [Thu, 4 Jul 2024 12:05:00 +0000 (17:35 +0530)]
Merge pull request #57716 from rhcs-dashboard/add-rgw-multisite-wizard-api

mgr/dashboard: add api for rgw multisite replication wizard

Reviewed-by: Nizamudeen A <nia@redhat.com>
12 months agoMerge pull request #58395 from pereman2/scrapper-replayer
Pere Diaz Bou [Thu, 4 Jul 2024 08:49:04 +0000 (10:49 +0200)]
Merge pull request #58395 from pereman2/scrapper-replayer

test/allocsim: osd op scraper replayer

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
12 months agomgr/dashboard: RGW sync policy crud operations 58387/head
Naman Munet [Tue, 2 Jul 2024 06:36:59 +0000 (12:06 +0530)]
mgr/dashboard: RGW sync policy crud operations

sync group crud ops added

Fixes: https://tracker.ceph.com/issues/66798
Signed-off-by: Naman Munet <nmunet@redhat.com>
12 months agoRGW|BN : change endpoint for http failing tests 58408/head
Ali Masarwa [Sun, 30 Jun 2024 13:26:22 +0000 (16:26 +0300)]
RGW|BN : change endpoint for http failing tests

Signed-off-by: Ali Masarwa <amasarwa@redhat.com>
12 months agoMerge pull request #58344 from guits/fix-log-errors
Guillaume Abrioux [Thu, 4 Jul 2024 06:17:44 +0000 (08:17 +0200)]
Merge pull request #58344 from guits/fix-log-errors

qa: fix log errors for cephadm tests

12 months agoMerge pull request #55076 from linuxbox2/wip-rgw-cksum
Matt Benjamin [Wed, 3 Jul 2024 22:25:26 +0000 (18:25 -0400)]
Merge pull request #55076 from linuxbox2/wip-rgw-cksum

rgw: implement S3 additional checksum support

12 months agocmake: use BLAKE3's cmake 55076/head
Casey Bodley [Tue, 25 Jun 2024 17:55:20 +0000 (13:55 -0400)]
cmake: use BLAKE3's cmake

Added EXCLUDE_FROM_ALL to prevent gristing files in
the subdir.

Signed-off-by: Casey Bodley <cbodley@redhat.com>
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agorgw_cksum: introduce attribute caching in RadosMultipartUpload
Daniel Gryniewicz [Wed, 26 Jun 2024 14:30:42 +0000 (10:30 -0400)]
rgw_cksum: introduce attribute caching in RadosMultipartUpload

Allow MultipartUpload::complete() to have previously called
Upload::get_info() without an additional round-trip to fetch
attributes.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agorgw_cksum: address review comments
Matt Benjamin [Sat, 22 Jun 2024 20:12:54 +0000 (16:12 -0400)]
rgw_cksum: address review comments

* remove rgw_cksum_pipe state enum, not needed [Casey review]
* remove a format that just took a single string substitution
  and passed it to an iostream [Casey review]
* use boost::to_upper* [Casey review]
* remove unused RGW_ATTR_CKSUM_ALGORITHM decl [Casey review]
* negate error code values in two places [Casey review]
* split cksum digests from base type decls
* resolve comment when checksum requested but not available
* remove redundant memset
* remove junk from rgw_blake3_digest.h
* s/ldpp_dout + fmt::format/ldpp_dout_fmt/g;
* fix conditional return of parts_count
      from RGWRados::Object::prepare().  A value for parts_count should
      be returned iff a *multipart* object manifest exists.
* remove /tmp output test
* finish moving ceph_crypto headers out of rgw_cksum.h
* consume the optional in multipart_parts_count
* target_attrs can be a reference (but not const)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agorgw_cksum: implement POST upload checksums
Matt Benjamin [Mon, 15 Apr 2024 20:44:58 +0000 (16:44 -0400)]
rgw_cksum: implement POST upload checksums

* properly transform pseudo headers in PostObj
* enable cksum verify in PostObj
* match checksum headers in match_policy_vars
* fixup add POST headers to environment

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agorgw_cksum: fix ReadOp comment
Matt Benjamin [Sun, 5 May 2024 18:27:06 +0000 (14:27 -0400)]
rgw_cksum: fix ReadOp comment

parts_count now returns a value for parts_count whenever the
target object is a multipart upload.  this has no additional
overhead, since this can be read off the manifest

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agoreturn parts_count from read_op::prepare whenever applicable
Matt Benjamin [Sat, 27 Apr 2024 14:24:25 +0000 (10:24 -0400)]
return parts_count from read_op::prepare whenever applicable

* fix to deal with parts_count == 1 asymmetry

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agorgw_cksum: upload->get_info() fails when !cksum (why?)
Matt Benjamin [Tue, 30 Apr 2024 19:27:28 +0000 (15:27 -0400)]
rgw_cksum: upload->get_info() fails when !cksum (why?)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agorgw_cksum: multipart upload checksums
Matt Benjamin [Wed, 10 Apr 2024 21:58:15 +0000 (17:58 -0400)]
rgw_cksum: multipart upload checksums

includes commits:

* fixes init-multipart header return
* introduce checksum to SAL MultipartPart interface
* thread optional checksum through DataProcessor
* code complete multipart checksum verify
* fix formatter
* fix ckecksum format for multipart objects in GET/HEAD ops
* always return parts_count from ReadOp::prepare() if applicable
      This behavior is used when returning the checksum of a multipart
      upload object.
* tweak conditional multipart_parts_count
* add checksum output to ListMultipart
* fix nil-return from GetHeaderCksumResult
* re-arm truncated if re-entering list-parts
* complete-multipart w/list-parts
* validate supplied checksum in CompleteMultipart
* verify checksum type against initial checksum algorithm
* rgw_op: suppress more x-amz headers
* final fixes and cleanups
* remove unused t0

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agorgw_cksum: test round-trip constructor (armored)
Matt Benjamin [Thu, 18 Apr 2024 19:26:00 +0000 (15:26 -0400)]
rgw_cksum: test round-trip constructor (armored)

I.e., prove cksum == Cksum(cksum.to_armor().c_str())

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months ago* forward pipe continuation in RGWPutObj_Cksum::process()
Casey Bodley [Mon, 29 Apr 2024 15:10:04 +0000 (11:10 -0400)]
* forward pipe continuation in RGWPutObj_Cksum::process()

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agorgw: add checksum and digest machinery
Matt Benjamin [Tue, 24 Sep 2019 21:12:02 +0000 (17:12 -0400)]
rgw: add checksum and digest machinery

Adds new Blake3 digest format (native), a concrete type to
represent digests, and static_visitor machinery to unify varying
checksum computations.

This framework, together with new trailing checksum header support,
is used to implement S3 additional checksum verification.  Parts of
the AWS content checksum API work build on a prior contribution from
imtzw <tongzhiwei_yewu@cmss.chinamobile.com>.
Thank you!

Fixes: https://tracker.ceph.com/issues/42080
Fixes: https://tracker.ceph.com/issues/63951
squashed commits:
* rgw_cksum: add trival test vectors for sha-format digests
      Computed digests match those produced by sha1sum, sha256sum,
      and sha512sum utilities.
* rgw_cksum: add test vectors for blake3
      Tests the same input strings with digests validated by
      b3sum (https://crates.io/crates/b3sum).
* rgw_ckum: switch to accel crc32c
      The internal Ceph convention appears to be to omit a final
      xor where ceph_crc32c is used, but it's required for compatibility
      with AWS implementations.
* rgw_cksum: add XXH3 digest
* rgw_cksum: write class encoder for rgw::digest::Cksum
* rgw_cksum: also reverse crc32c (REBASEME)
      Mark noticed that the crc32c output was being tested against a
      byteswapped value (crc32c also needs byteswap on LE).
* rgw_cksum: add digest::Cksum serde tests
* rgw_cksum: fix main(...) linkage
      (so we run our main unit and not the one in gmock
* rgw_cksum: convenience extensions for integration with RGW/S3
* introduce rgw_cksum unique_ptr factory
* rgw_cksum: mark string transform accessors const
* rgw_cksum: fixup unittest_rgw_chksum compilation--all existing tests pass
* rgw_cksum: hook up put-object checksum workflow
* tweaks to report on content checksum mismatch
* rgw_cksum: match SDK as well as general checksum header
* make it more efficient
* initialize RGWPutObj_Cksum::digest
* rgw_cksum:  write parse_cksum_type w/const char* arg
* initialize _type correctly; doing armored wrong
* fix expected checksum header name, clean up verify
* fix output on checksum verify fail, cleanup
* introduce Cksum::to_armor();  all AWS cases pass
* oops, extra 0-byte at end of to_armor() result
* use to_armor() with decoded checksums (i.e., for all S3 presentation)
* remove unnecessary finalize() in RGWPutObj_Cksum dtor
* RGWPutObj_Cksum::Factory fixes
* fixes test_object_checksum_sha256
* choose preferred checksum algorithm header if both are present
* log verified checksums in RGWPutObj::execute at 16
* checksum not needed in policy condition
* fix checksum trailing header format
* move Blake3 to rgw_digest_blake3.h

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agocommon/rgw: add BLAKE3 submodule
Matt Benjamin [Tue, 25 Jun 2024 15:45:35 +0000 (11:45 -0400)]
common/rgw: add BLAKE3 submodule

Fast, cryptographic hash functions suitable for block checksums.
BLAKE3 is the faster, more portable successor to Blake2(b,s),
now with 4x throughput.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agocommon: update xxHash submodule to v082
Matt Benjamin [Thu, 15 Feb 2024 23:24:58 +0000 (18:24 -0500)]
common: update xxHash submodule to v082

Among other things, provides XXH128 and XXH3.  Includes
compile fixes for gcc-13.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agocmake/erasure-code/jerasure: jerasure_utils depends on legacy-option-headers 58414/head
Casey Bodley [Wed, 3 Jul 2024 17:58:49 +0000 (13:58 -0400)]
cmake/erasure-code/jerasure: jerasure_utils depends on legacy-option-headers

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agocmake/test/objectstore: remove ObjectStoreImitator object library
Casey Bodley [Wed, 3 Jul 2024 17:47:02 +0000 (13:47 -0400)]
cmake/test/objectstore: remove ObjectStoreImitator object library

just compile it as a source file in ceph_test_fragmentation_sim

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agocmake/test/objectstore: store_test_fixture depends on legacy-option-headers
Casey Bodley [Wed, 3 Jul 2024 17:45:38 +0000 (13:45 -0400)]
cmake/test/objectstore: store_test_fixture depends on legacy-option-headers

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agocmake/mgr: mgr_cap_obj depends on legacy-option-headers
Casey Bodley [Wed, 3 Jul 2024 17:43:52 +0000 (13:43 -0400)]
cmake/mgr: mgr_cap_obj depends on legacy-option-headers

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agocmake/compressor: QatAccel depends on legacy-option-headers
Casey Bodley [Wed, 3 Jul 2024 17:42:46 +0000 (13:42 -0400)]
cmake/compressor: QatAccel depends on legacy-option-headers

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agocmake/crush: crush_objs depends on legacy-option-headers
Casey Bodley [Wed, 3 Jul 2024 17:39:20 +0000 (13:39 -0400)]
cmake/crush: crush_objs depends on legacy-option-headers

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agodoc/rados: document manually passing search domain 58368/head
Zac Dover [Mon, 1 Jul 2024 06:36:02 +0000 (16:36 +1000)]
doc/rados: document manually passing search domain

Document how to manually pass the search domain to "mon_dns_srv_name" in
doc/rados/configuration/mon-lookup-dns.rst.

This commit is made in response to a request by Lander Duncan that was made on the [ceph-users] mailing list, and can be seen here: https://lists.ceph.io/hyperkitty/list/ceph-users@ceph.io/thread/F7V4CWLIYCAJ4JXI2JLNY6QPCFPR4SLA/

Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com>
Signed-off-by: Zac Dover <zac.dover@proton.me>
12 months agoMerge pull request #58407 from nbalacha/wip-nbalacha-rbd-qa-fixes
Ilya Dryomov [Wed, 3 Jul 2024 16:36:48 +0000 (18:36 +0200)]
Merge pull request #58407 from nbalacha/wip-nbalacha-rbd-qa-fixes

qa/workunits/rbd: minor rbd_mirror_helpers.sh fixes

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
12 months agoMerge pull request #58403 from ivancich/wip-fix-bucket-sync-thread
Casey Bodley [Wed, 3 Jul 2024 16:13:47 +0000 (17:13 +0100)]
Merge pull request #58403 from ivancich/wip-fix-bucket-sync-thread

rgw: fix bucket sync thread waiting inordinate amount of time

Reviewed-by: Casey Bodley <cbodley@redhat.com>
12 months agoMerge pull request #58378 from YaZasnyal/fix/discard_buffer_size
Casey Bodley [Wed, 3 Jul 2024 14:58:20 +0000 (15:58 +0100)]
Merge pull request #58378 from YaZasnyal/fix/discard_buffer_size

rgw: DoS when QuotaExceeded

Reviewed-by: Casey Bodley <cbodley@redhat.com>
12 months agoqa: fix log errors for cephadm tests 58344/head
Guillaume Abrioux [Thu, 27 Jun 2024 08:12:10 +0000 (10:12 +0200)]
qa: fix log errors for cephadm tests

This fixes a lot of errors induced by the log scrapper check.

Fixes: https://tracker.ceph.com/issues/66751
Signed-off-by: Guillaume Abrioux <gabrioux@ibm.com>
12 months agoMerge pull request #58119 from Suyashd999/fix-uam8
Casey Bodley [Wed, 3 Jul 2024 14:08:33 +0000 (15:08 +0100)]
Merge pull request #58119 from Suyashd999/fix-uam8

rgw_user: 'keys' is in undefined state after being moved.

Reviewed-by: Yuval Lifshitz <ylifshit@ibm.com>
Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
12 months agoMerge pull request #58339 from clwluvw/s3website-no-host
Casey Bodley [Wed, 3 Jul 2024 14:04:15 +0000 (15:04 +0100)]
Merge pull request #58339 from clwluvw/s3website-no-host

rgw: use s3website REST when higher priority and no host header

Reviewed-by: Casey Bodley <cbodley@redhat.com>
12 months agoMerge pull request #58399 from cbodley/wip-rgw-deshard-encoding
Casey Bodley [Wed, 3 Jul 2024 14:03:34 +0000 (15:03 +0100)]
Merge pull request #58399 from cbodley/wip-rgw-deshard-encoding

cls/rgw: bump cls_rgw_reshard_entry decode version to match encode

Reviewed-by: Adam Emerson <aemerson@redhat.com>
12 months agoMerge pull request #57060 from awojno-bloomberg/wip-awojno-status-header
Casey Bodley [Wed, 3 Jul 2024 14:02:55 +0000 (15:02 +0100)]
Merge pull request #57060 from awojno-bloomberg/wip-awojno-status-header

rgw: implement x-amz-replication-status for PENDING & COMPLETED

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
12 months agotest/allocsim: trim bufferlist before sending 58395/head
Pere Diaz Bou [Wed, 3 Jul 2024 13:55:36 +0000 (15:55 +0200)]
test/allocsim: trim bufferlist before sending

Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com>
12 months agotest/allocsim: worker threads, op hashed by client
Pere Diaz Bou [Wed, 3 Jul 2024 10:59:20 +0000 (12:59 +0200)]
test/allocsim: worker threads, op hashed by client

Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com>
12 months agoqa/workunits/rbd: minor fixes 58407/head
N Balachandran [Wed, 3 Jul 2024 10:46:13 +0000 (16:16 +0530)]
qa/workunits/rbd: minor fixes

Corrected paths and added missing spaces.

Signed-off-by: N Balachandran <nibalach@redhat.com>
12 months agotest/allocsim: mmap threaded parser
Pere Diaz Bou [Wed, 3 Jul 2024 10:21:46 +0000 (12:21 +0200)]
test/allocsim: mmap threaded parser

Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com>
12 months agotest/allocsim: comment running op cout
Pere Diaz Bou [Wed, 3 Jul 2024 08:52:28 +0000 (10:52 +0200)]
test/allocsim: comment running op cout

Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com>
12 months agotest/allocsim: comment parssing cout
Pere Diaz Bou [Wed, 3 Jul 2024 08:36:05 +0000 (10:36 +0200)]
test/allocsim: comment parssing cout

Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com>
12 months agotest/allocsim: truncate,zero,writefull replay operations
Pere Diaz Bou [Wed, 3 Jul 2024 08:26:23 +0000 (10:26 +0200)]
test/allocsim: truncate,zero,writefull replay operations

Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com>
12 months agorgw: RGWCoroutinesManager warns about blocking 58179/head
Casey Bodley [Thu, 20 Jun 2024 20:34:06 +0000 (16:34 -0400)]
rgw: RGWCoroutinesManager warns about blocking

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agorgw/rados: RGWReshardWait warns about blocking
Casey Bodley [Thu, 20 Jun 2024 20:28:02 +0000 (16:28 -0400)]
rgw/rados: RGWReshardWait warns about blocking

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agorgw: config option rgw_asio_assert_yielding
Casey Bodley [Thu, 20 Jun 2024 19:56:50 +0000 (15:56 -0400)]
rgw: config option rgw_asio_assert_yielding

enable this to assert on blocking calls that should be asynchronous
instead of just logging a warning message

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agoMerge pull request #57985 from thotz/add-storage-adminops-api
Casey Bodley [Tue, 2 Jul 2024 19:55:25 +0000 (20:55 +0100)]
Merge pull request #57985 from thotz/add-storage-adminops-api

rgw/adminops: add option to provide storageclass adminops user apis

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
12 months agoMerge pull request #57858 from adamemerson/wip-66340
Casey Bodley [Tue, 2 Jul 2024 19:46:47 +0000 (20:46 +0100)]
Merge pull request #57858 from adamemerson/wip-66340

rgw/multisite: Fix use-after-move in retry logic in logbacking

Reviewed-by: Yuval Lifshitz <ylifshit@ibm.com>
Reviewed-by: Suyash Dongre <suyashd999@gmail.com>
12 months agorgw: fix bucket sync thread waiting inordinate amount of time 58403/head
J. Eric Ivancich [Tue, 2 Jul 2024 17:50:27 +0000 (13:50 -0400)]
rgw: fix bucket sync thread waiting inordinate amount of time

A signed value was read in as an unsigned value, so -1 was interpreted
as a very large value. This made the thread wait period in the bucket
sync thread inordinately long, preventing bucket sync and dynamic
resharding (unless values appropriate for debugging were set).

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
12 months agoMerge pull request #58388 from sseshasa/wip-fix-perf-basic-failure
Sridhar Seshasayee [Tue, 2 Jul 2024 15:07:54 +0000 (20:37 +0530)]
Merge pull request #58388 from sseshasa/wip-fix-perf-basic-failure

qa/tasks: Initialize 'monitoring_profiles' spec to an empty dict

Reviewed-by: Neha Ojha <nojha@redhat.com>
12 months agoMerge PR #58375 into main
Patrick Donnelly [Tue, 2 Jul 2024 14:42:50 +0000 (10:42 -0400)]
Merge PR #58375 into main

* refs/pull/58375/head:
qa/crontab: convert fs main run to monthly at higher priority

Reviewed-by: Venky Shankar <vshankar@redhat.com>
12 months agorgw/kms: RGWKMIPTransceiver warns about blocking
Casey Bodley [Thu, 20 Jun 2024 19:53:17 +0000 (15:53 -0400)]
rgw/kms: RGWKMIPTransceiver warns about blocking

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agorgw/pubsub: Waiter warns about blocking
Casey Bodley [Thu, 20 Jun 2024 19:46:19 +0000 (15:46 -0400)]
rgw/pubsub: Waiter warns about blocking

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agorgw: split is_asio_thread warnings into separate file/function
Casey Bodley [Thu, 20 Jun 2024 19:43:36 +0000 (15:43 -0400)]
rgw: split is_asio_thread warnings into separate file/function

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agorgw: pass DoutPrefixProvider into RGWHTTPClient
Casey Bodley [Thu, 20 Jun 2024 17:41:06 +0000 (13:41 -0400)]
rgw: pass DoutPrefixProvider into RGWHTTPClient

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agocls/rgw: bump cls_rgw_reshard_entry decode version to match encode 58399/head
Casey Bodley [Tue, 2 Jul 2024 13:07:51 +0000 (09:07 -0400)]
cls/rgw: bump cls_rgw_reshard_entry decode version to match encode

9302fbb3f5416871c1978af5d45f3bf568c2c190 bumped the version in
ENCODE_START() but missed DECODE_START(). i don't think that would cause
any decode failures, unless we later raise ENCODE_START's compat_v above
2

Signed-off-by: Casey Bodley <cbodley@redhat.com>
12 months agoMerge pull request #58081 from sajibreadd/wip-65861
Casey Bodley [Tue, 2 Jul 2024 12:41:14 +0000 (13:41 +0100)]
Merge pull request #58081 from sajibreadd/wip-65861

notifications: report an error when persistent queue deletion failed

Reviewed-by: Yuval Lifshitz <ylifshit@ibm.com>