| Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
|
|
moved out of the main commit to
facilitate backporting it to pre-C++20.
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
|
|
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
|
|
In its get_tracked_conf_keys() member function, the
cacher (in the existing code) initializes a static
function-block variable ('keys'), and uses it for
registering the observer.
But the cacher is instantiated on the type of
the configuration value. Thus, multiple cacher
objects for which the configuration values are
of the same type - share the static 'keys'. Only
one of the observers is registered.
Note that the code could have been simplified
somewhat, if the signature of the
get_tracked_conf_keys() function
was changed to return 'const char* const *'.
Fixes: https://tracker.ceph.com/issues/69236
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
|
|
Add the actual EOL date for the Quincy release (it's 2025-01-13).
Signed-off-by: Zac Dover <zac.dover@proton.me>
|
|
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
`beast::ssl_stream` is deprecated as of 1.86, and its loss of the move
constructor keeps it from compiling on that version.
Hopefully this passes tests on 1.85, too, or it will have to wait
until the boost bump.
Signed-off-by: Adam Emerson <aemerson@redhat.com>
|
|
Ensures the stringstream is empty before sending a command in the RadosIO class
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
In `struct bluefs_fnode_t` there is a vector `extents` and
the vector `extents_index` that is a log2 seek cache.
Until modifications to truncate() we never removed extents from files.
Modified truncate() did not update extents_index.
For example 10 extents long files when truncated to 0 will have:
0 extents, 10 extents_index.
After writing some data to file:
1 extents, 11 extents_index.
Now, `bluefs_fnode_t::seek` will binary search extents_index,
lets say it located seek at item #3.
It will then jump up from #0 extent (that exists) to #3 extent which
does not exist at.
The worst part is that code is now broken, as #3 != extent.end().
There are 3 parts of the fix:
1) assert in `bluefs_fnode_t::seek` to protect against
jumping outside extents
2) code in BlueFS::truncate to sync up `extents_index` with `extents`
3) dampening down assert in _replay to give a way out of cases
where incorrect "offset 12345" (12345 is file size) instead of
"offset 20000" (allocations occupied) was written to log.
Fixes: https://tracker.ceph.com/issues/69481
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
|
|
* when source bucket is deleted
* when logging is disabled
* when logging conf changes
* when target bucket is deleted
also add "bucket logging info" admin command
returning logging conf for source bucket, and list
of source buckets for log bucket
Signed-off-by: Yuval Lifshitz <ylifshit@ibm.com>
|
|
Signed-off-by: Yuval Lifshitz <ylifshit@ibm.com>
|
|
Signed-off-by: Yuval Lifshitz <ylifshit@ibm.com>
|
|
Signed-off-by: Yuval Lifshitz <ylifshit@ibm.com>
|
|
Signed-off-by: Yuval Lifshitz <ylifshit@ibm.com>
|
|
Thanks to the maintainers of the Arch User Repository Ceph PKGBUILD
for this fix.
Signed-off-by: Adam Emerson <aemerson@redhat.com>
|
|
Help from Pritha and Casey appreciated
Plus, fix 3 explicit mapping tests in test_rgw_iam_policy.cc.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
This commit adds:
1. workflow summary in the first section along with an image.
2. sub-section "Pushing to ceph-ci repository" to second section.
3. file doc/dev/developer_guide/testing_integration_tests/workflow.png
Signed-off-by: Vallari Agrawal <vallari.agrawal@ibm.com>
|
|
Unittest showing 2 different flavours of problems:
1) bluefs log corruption
2) bluefs sigsegv
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
|
|
So that PhyscalNodeMapping doesn't contain LBAMapping specific
interfaces
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
|
|
Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
|
|
Remove "Quincy" from the list of "Active Releases" in
doc/releases/index.rst.
Signed-off-by: Zac Dover <zac.dover@proton.me>
|
|
clarify the following error when migrating a user into an account:
> could not modify user: unable to modify user, UserName contains invalid characters
Fixes: https://tracker.ceph.com/issues/69470
Signed-off-by: Casey Bodley <cbodley@redhat.com>
|
|
Fixes: https://tracker.ceph.com/issues/69303
Signed-off-by: Adam Emerson <aemerson@redhat.com>
|
|
Issue: mon/test_mon_osdmap_prune.sh is failing due to
PG_DEGRADED state.
Cause: We are writing an objects to a newly created PG before
it has enough OSDs in acting set to create enough replicas.
This is expected behaviour, thus the solution is to add the
warning to ignorelist.
Fixes: https://tracker.ceph.com/issues/69288
Signed-off-by: Shraddha Agrawal <shraddha.agrawal000@gmail.com>
|
|
Update these in config.libsonnet:
- NVMeoFMaxGatewaysPerGroup (4->8)
- NVMeoFMaxGatewaysPerCluster (4->32)
- NVMeoFMaxNamespaces (1024->2048)
- NVMeoFHighClientCount (32->128)
Also update prometheus_alerts.yml and test_alerts.yml
accordingly.
Signed-off-by: Vallari Agrawal <vallari.agrawal@ibm.com>
|
|
Added more content and rewrite some sections
Signed-off-by: Kamoltat Sirivadhna <ksirivad@redhat.com>
|
|
This commit updates RGW Config Reference - Lifecycle Settings section. In particular it addresses an incorrect suggestion to decrease parallel threads in the workers pool for a more aggressive/accelerated per-bucket lifecycle processing. A more aggressive lifecycle processing for a bucket containing higher number of objects is achieved by increasing, not decreasing parallel threads.
Current suggestion is miss-leading.
Fixes: https://tracker.ceph.com/issues/63659
Signed-off-by: Laimis Juzeliunas <laimis.juzeliunas@oxylabs.io>
|
|
Signed-off-by: Jesse F. Williamson <1643380+chardan@users.noreply.github.com>
|
|
the request body, thus missing some data if specified inside
CreateBucketConfiguration xml on the non-master zone.
also, now that we perform cksum validation against empty payloads,
such a request would fail with -ERR_AMZ_CONTENT_SHA256_MISMATCH due
to a zero content-length but a non-empty payload hash.
this fix ensures that request body is forwarded during create_bucket
Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
|
|
Signed-off-by: Piyush Agarwal <piyushagarwal14.pa@gmail.com>
|
|
There seems to be change in 'nvme list' json output
which caused failures in asserts after 'nvme connect-all'
command.
Signed-off-by: Vallari Agrawal <vallari.agrawal@ibm.com>
|
|
Suggested by Casey.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
Suggested by Casey. This is a relatively small value, but let's
be conservative.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
Signed-off-by: Casey Bodley <cbodley@redhat.com>
|
|
Signed-off-by: Casey Bodley <cbodley@redhat.com>
|
|
the part head objects don't have a RGW_ATTR_MANIFEST attribute, so
get_obj_state_impl() isn't able to set the correct
RGWObjState::accounted_size unless RGW_ATTR_COMPRESSION provides one
get_part_obj_state() builds a fake manifest in memory to represent the
part and updates state.size accordingly, but it hadn't corrected the
value of state.accounted_size
Signed-off-by: Casey Bodley <cbodley@redhat.com>
|
|
RGWGetObj::execute() relies on the virtual get_decrypt_filter() which is
overridden by RGWGetObj_ObjStore_S3
but when called from RGWGetObjAttrs_ObjStore_S3, there is no override.
add one that just calls rgw_s3_prepare_decrypt()
Signed-off-by: Casey Bodley <cbodley@redhat.com>
|
|
The version_id member in RGWGetObjAttrs shadows the one in
RGWGetObj.
Just assign it before conditionally returning the version-id header
in RGWGetObjAttrs_ObjStore_S3::send_response().
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
upload-part
There appear to be workloads that provide a checksum algorithm in
create-multipart-upload, but do not provide (what must be) the
corresponding algorithm when uploading the parts. (complete-multipart-upload
has no checksum argument, the value is implicit.)
This behavior is inconsistent with at least some SDKs, but it is
possibly accepted behavior in AWS S3, and is not logically necessary,
since the originally supplied checksum type is already known.
Therefore, change the behavior of upload-part to fall back to a
checksum type that was sent with the corresponding create-multipart-upload
request, if one is present, rather than failing with InvalidRequest.
Fixes: https://tracker.ceph.com/issues/68513
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 6b487a4c6dbadf3f470c8b12ddd5f2521c6920c6)
|
|
If a create-multipart-upload requested additional checksum but a
part upload omits it, fail gracefully.
Possibly we can fixup the checksum uploads and remove this scenario,
but coding defensively would still be correct.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
(code review)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
Implements the corresponding S3 operation, and
introduces a new Object::list_parts SAL interface to support it.
Includes Casey Bodley <cbodley@redhat.com>:
* use uncompressed part size
* local variable shadowed a member variable and broke handling of
PartNumberMarker in request and response
Fixes: https://tracker.ceph.com/issues/64109
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
|
|
This commit updates the `is_device` function to correctly handle
loop devices.
The function now validates loop devices when they are explicitly
allowed, by checking their type (`loop`) in addition to `disk`
and `mpath`.
Changes include:
- Extending the type check to include `loop` in the list of
supported device types.
- Enhancing the docstring for better documentation of the
function's purpose and behavior.
These changes ensure that loop devices are properly recognized
and handled when configuring OSDs in ceph-volume.
Fixes: https://tracker.ceph.com/issues/69432
Signed-off-by: Guillaume Abrioux <gabrioux@ibm.com>
|
|
random values are generated thereafter
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
running
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
ceph_json.h fully.
Also moved and renamed JSONStructures files so they structures are more easily identifiable and usable by others if desired.
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
data_generation::SeededRandomGenerator
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|