qa/standalone/scrub: fix "scrubbed in 0ms" in osd-scrub-test.sh
The specific test looks for a 'last scrub duration' higher than
0 as a sign that the scrub actually ran. Previous code fixes
guaranteed that even a scrub duration as low as 1ms would be
reported as "1" (1s). However, none of the 15 objects created
in this test were designated for the tested PG, which remained
empty. As a result, the scrub duration was reported as "0".
The fix is to create a large enough number of objects so that
at least one of them is mapped to the tested PG.
Warning: Encountered an error when evaluating display name ${{ format('python3 ceph/src/script/redmine-upkeep.py --github-action --git-dir=./ceph/ {0} {1}
', github.event_name == 'workflow_dispatch' && (inputs.debug && '--debug' || '') || '', github.event_name == 'workflow_dispatch' && format('--limit={}', inputs.limit) || '') }}. The template is not valid. .github/workflows/redmine-upkeep.yml (Line: 54, Col: 14): The following format string is invalid: --limit={}
Error: The template is not valid. .github/workflows/redmine-upkeep.yml (Line: 54, Col: 14): The following format string is invalid: --limit={}
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
This script's functionality has been incoporated into the redmine-upkeep.py script:
* A backport which is merged is moved to the Resolved state by
_transform_backport_resolved
* A non-backport issue with all backports resolved/rejected will transition
from 'Pending Backport' to 'Resolved'.
The only thing not done is changing the "Target Version" which is not
particularly useful anymore as hotfixes frequently invalidate it. Rely on
"Released In" instead.
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
Patrick Donnelly [Thu, 26 Jun 2025 02:03:13 +0000 (22:03 -0400)]
script: add redmine-upkeep script
This script intends to do all Redmine upkeep related tasks.
It's organized so that a series of transformations are run on any issue under
examination. These include things like updating the "Merge Commit" and "Fixed
In" fields when the associated PR is merged. The "Released In" field is also
set when the associated merge commit is part of some non-RC release.
Transformations can be run in one of three ways:
* An explicit --issue switch specifies a comma separated list of issues to
operate on.
* An explicit --revision-range switch specifies a Git revision range to lookup
first-parent merge commits. For each of those merge commits, try to find
the associated issue with "Merge Commit" equal to that merge commit. If found,
operate on that issue. This is intended to allow updating the "Released In"
field whenever a tag is pushd to ceph.git.
Future work:
* Incorporate backport-create-issue into this script.
* Also update "Target version" if straightforward. This is protected by redmine
whenever a version is locked/closed.
* Anything else we desire to automate!
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
Merge pull request #62713 from soumyakoduri/wip-skoduri-restore-glacier
rgw/cloud-restore [PART2] : Add Restore support from Glacier/Tape cloud endpoints
Reviewed-by: Adam Emerson <aemerson@redhat.com> Reviewed-by: Jiffin Tony Thottan <thottanjiffin@gmail.com> Reviewed-by: Matt Benjamin <mbenjamin@redhat.com> Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
This should fix the chmod 777 /var/log/ceph failures.
We were missing the install task which resulted in no /var/log/ceph:
```
2025-07-07T08:55:44.586 INFO:teuthology.run_tasks:Running task ceph...
2025-07-07T08:55:44.679 INFO:tasks.ceph:Making ceph log dir writeable by
non-root...
2025-07-07T08:55:44.679 DEBUG:teuthology.orchestra.run.smithi144:> sudo
chmod 777 /var/log/ceph
2025-07-07T08:55:44.711
INFO:teuthology.orchestra.run.smithi144.stderr:chmod: cannot access
'/var/log/ceph': No such file or directory
```
Shachar Sharon [Thu, 26 Jun 2025 06:43:01 +0000 (09:43 +0300)]
mgr/smb: Enable per-share profile counters
Samba's commit 9f8d272 ("vfs_ceph_new: use per-share profile macros")
enables per-share profile counters for VFS ceph bridge. Enable those by
default for each smb-ceph share.
Matan Breizman [Sun, 8 Jun 2025 10:20:25 +0000 (10:20 +0000)]
crimson/CMakeLists: simplify crimson-common deps
instead of appending conditional dependencies to crimson-common with
crimson_common_deps and crimson_common_public_deps, use
target_link_libraries directly.
Connor Fawcett [Tue, 24 Jun 2025 11:45:06 +0000 (12:45 +0100)]
Adds a new command-line utility which can check the consistency of objects within an erasure coded pool.
A new test-only inject tells the EC backend to return both data and parity shards to the client so that they can
be checked for consistency by the new tool.
Soumya Koduri [Fri, 23 May 2025 20:25:30 +0000 (01:55 +0530)]
rgw/cloud-restore: Handle failure with adding restore entry
In case adding restore entry to FIFO fails, reset the `restore_status`
of that object as "RestoreFailed" so that restore process can be
retried from the end S3 user.
Reviewed-by: Adam Emerson <aemerson@redhat.com> Reviewed-by: Jiffin Tony Thottan <thottanjiffin@gmail.com> Signed-off-by: Soumya Koduri <skoduri@redhat.com>
rgw/cloud-restore: Support restoration of objects transitioned to Glacier/Tape endpoint
Restoration of objects from certain cloud services (like Glacier/Tape) could
take significant amount of time (even days). Hence store the state of such restore requests
and periodically process them.
Brief summary of changes
* Refactored existing restore code to consolidate and move all restore processing into rgw_restore* file/class
* RGWRestore class is defined to manage the restoration of objects.
* Lastly, for SAL_RADOS, FIFO is used to store and read restore entries.
Currently, this PR handles storing state of restore requests sent to cloud-glacier tier-type which need async processing.
The changes are tested with AWS Glacier Flexible Retrieval with tier_type Expedited and Standard.
Reviewed-by: Matt Benjamin <mbenjamin@redhat.com> Reviewed-by: Adam Emerson <aemerson@redhat.com> Reviewed-by: Jiffin Tony Thottan <thottanjiffin@gmail.com> Reviewed-by: Daniel Gryniewicz <dang@redhat.com> Signed-off-by: Soumya Koduri <skoduri@redhat.com>
Dnyaneshwari [Thu, 22 May 2025 07:08:25 +0000 (12:38 +0530)]
mgr/dashboard: Local Storage Class - create and list Fixes: https://tracker.ceph.com/issues/71460 Signed-off-by: Dnyaneshwari Talwekar <dtalwekar@redhat.com>
Shraddha Agrawal [Thu, 26 Jun 2025 12:27:45 +0000 (17:57 +0530)]
mon/MgrStatMonitor.cc: cleanup handle_conf_change
Prior to this change, we were using a flag value,
`reset_availability_last_uptime_downtime_val` to record the
timestamp to which the last_uptime and last_downtime should be
updated to. This was originally done so to avoid the values
being overwritten by a paxos update.
Now, instead of using an intermediate value, we are immediately
clearing the last_uptime and last_downtime values in
pending_pool_availability object. Since we are updating the values
in the pending object, we will not lost this information due to
an incoming paxos update.
alienstore FTBFS [1] due to virtual-dtor warning when compiling seastar [2].
Instead of using alien::cflags which define INTERFACE_COMPILE_OPTIONS of
-Wno-non-virtual-dtor - Let's directly add this compile option to
tagets using seastar.
Crimson non-alien targets solve that with crimson::cflags which
defines the relevant compile flag. However, we don't reuse it here since
it also carries WITH_CRIMSON.
As both crimson::cflags and crimson-alienstore which are using seastar
have to set no-non-virtual-dtor - The compile option moved to the common
cmake file instead of setting it in both targets.
[1]
```
crimson/os/alienstore/alien_log.cc:21:28: required from here
seastar/include/seastar/core/future.hh:666:7:
warning: ‘class seastar::continuation_base<void>’ has virtual functions
and accessible non-virtual destructor [-Wnon-virtual-dtor]
```
mon: Integrate discard queue overflow into pg health warnings
Added a health warning mechanism to monitor the discard queue for potential overload
Emits a warning if the accumulated discarded bytes in the queue exceed the configured threshold
Introduced a debugging tool to simulate slow discard operations by adding a configurable delay
common/options: Added bdev_discard_max_bytes and bdev_debug_discard_sleep options
Added a health warning mechanism to monitor the discard queue for potential overload
Emits a warning if the accumulated discarded bytes in the queue exceed the configured threshold
Introduced a debugging tool to simulate slow discard operations by adding a configurable delay
Jaya Prakash [Thu, 9 Jan 2025 16:14:05 +0000 (21:44 +0530)]
blk:Warning added for discard queue overflow
Added a health warning mechanism to monitor the discard queue for potential overload
Emits a warning if the accumulated discarded bytes in the queue exceed the configured threshold
Introduced a debugging tool to simulate slow discard operations by adding a configurable delay