| Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
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>
|
|
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
Add sequences to test IOs with simple error injects, along with some small fixes for previous error inject implementation.
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
interactive mode
Add injecterror commands that can be used in interactive mode to inject read and write errors as well as clear them
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
Error inject interfaces for EC reads and writes using
ceph tell osd.<n> interface
Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
|
|
Implement inheritence for ceph::io_exerciser::IoOp to allow better differentiation between the different Op types and allow more complex Operations to be implemented
Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
|
|
This reverts commit 41327dcf0f733777f0d022d1bab7bf72b9807b3c.
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
|
|
As Seastore/trash was removed from the non-exp suite, it is
moved here until fully supported.
Follow-up to: 5150dae471c
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
|
|
"basic" directory is included in the non-exp suite and is fully supported
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
|
|
Seastore supports thrash_simple only until https://tracker.ceph.com/issues/69405
is resolved.
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
|