Casey Bodley [Mon, 1 Dec 2025 15:25:16 +0000 (10:25 -0500)]
cmake: fix for -DWITH_BREAKPAD=OFF
in 1ba55a20be1023c585ba96617dc6a9d2aa79a51b, i tried to avoid the NOT
condition by swapping the option's defaults. but when the condition is
false, the option is forced to ON even if the user manually set it OFF
fix this by inverting the condition and swapping the default values
Reported-by: Joseph Mundackal <joseph.j.mundackal@gmail.com> Signed-off-by: Casey Bodley <cbodley@redhat.com>
Nizamudeen A [Tue, 25 Nov 2025 11:31:31 +0000 (17:01 +0530)]
mgr/dashboard: support custom prop for table item redirection
use an extra customTemplateConfig called `customRowProperty` where
you can provide the key of the property you wish to route, instead of
relying on the cell's prop itself
Fixes: https://tracker.ceph.com/issues/73989 Signed-off-by: Nizamudeen A <nia@redhat.com>
Issue: Route was being force-reloaded using a two-step navigation hack causing unnecessary redirects and side effects.
Fix: Replaced the hack with Angular’s native same-URL reload using onSameUrlNavigation: 'reload' for a clean, stable route refresh.
Seena Fallah [Tue, 25 Nov 2025 18:22:44 +0000 (19:22 +0100)]
rgw: fix offset calculation in copy_obj_data
Set ofs to total bytes read by adding 1 to end offset.
Since 'end' represents the last byte offset (zero-indexed),
we need to add 1 to get the actual number of bytes copied.
Patrick Donnelly [Wed, 19 Nov 2025 23:16:21 +0000 (18:16 -0500)]
mon/HealthMonitor: avoid MON_DOWN for freshly added Monitor
In testing, we often have the scenario where cephadm has created a
cluster but doesn't add more monitors until well past
mon_down_mkfs_grace. This causes useless MON_DOWN warnings to be thrown
which fails QA jobs. Avoid this situation entirely by giving a
reasonable grace period for a monitor added to the MonMap to join
quorum.
Fixes: https://tracker.ceph.com/issues/73934 Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
Afreen Misbah [Tue, 21 Oct 2025 16:37:46 +0000 (22:07 +0530)]
mgr/dashboard: Carbonize the Change Password Form
Fixes https://tracker.ceph.com/issues/73193
- using carbon based stylings, typography and components
- used grid layout for form arrangement
- breadcrumb is slightly off, which needs to be fixed by applying grid layout to the app shell
Kefu Chai [Sat, 22 Nov 2025 00:24:36 +0000 (08:24 +0800)]
qa/suites/rados/encoder: exclude ceph-osd-* when installing LTS releases
In a37b5b5, the ceph-osd-classic and ceph-osd-crimson packages were
added to qa/packages/packages.yaml. The "install" task uses this file as
the default package list for all branches, including LTS releases like
Reef.
However, a37b5b5 only exists in the main branch and won't be backported
to LTS branches. This causes installation failures in the rados/encoder
test suite, which verifies forward compatibility by installing LTS
releases and testing whether they can decode the latest corpus.
Exclude ceph-osd-classic and ceph-osd-crimson from LTS installations to
ensure the test suite can successfully install ceph-dencoder, which is
required for the interoperability tests.
Seena Fallah [Mon, 19 Feb 2024 09:39:24 +0000 (10:39 +0100)]
cmake: skip boost dependency on ALIAS executable targets
The current add_executable override in Boost does not support alias
targets. Although Ceph currently has no alias targets that are
affected by this limitation, addressing this issue now will benefit
future developments and personal projects.
This change enhances the robustness of the override logic, ensuring
compatibility with alias targets moving forward.
Afreen Misbah [Wed, 19 Nov 2025 20:03:26 +0000 (01:33 +0530)]
monitoring: Fixes for development
- fixes tox.ini using and undefined env - `grafonnet-check`( instead of `jsonnet-check`)
- adds steps for local development of mixins and building jsonnet
- added help command in Makefile
- added comments and descriptions for Makefile and tox.ini
Marcus Watts [Sat, 25 May 2024 03:45:14 +0000 (23:45 -0400)]
rgw: fix lifecycle transition of encrypted multipart objects
Lifecycle transtion can copy objects to a different storage tier.
When this happens, since the object is repacked, the original
manifest is invalidated. It is necessary to store a special
"parts_len" attribute to fix this. There was code in PutObj
to handle this, but that was only used for multisite replication,
it is not used by the lifecycle transisiton code. This fix
adds similar logic to the lifecycle transition code path to make the
same thing happen.
Fixes: https://tracker.ceph.com/issues/23264 Signed-off-by: Marcus Watts <mwatts@redhat.com>
Seena Fallah [Sat, 7 Jun 2025 20:13:22 +0000 (22:13 +0200)]
rgw: introduce RGWCopyObjDPF for RGWCopyObj
This will construct a DataProcessorFactory where it will apply
filters such as decrypt and decompress when a data is being read
and encrypt and compression when the data wants to be written.
Co-authored-by: Marcus Watts <mwatts@redhat.com> Signed-off-by: Seena Fallah <seenafallah@gmail.com>
Seena Fallah [Sat, 7 Jun 2025 20:06:01 +0000 (22:06 +0200)]
rgw/sal: introduce DataProcessorFactory
This is a factory for DataProcessor to enable reading the data by
RGWGetObj_Filter and pass it to be processed by the writer that is
defined by set_writer().
With that, we can have filters applied to the data before writing.
That can be either filter on read or filter on write.
Co-authored-by: Marcus Watts <mwatts@redhat.com> Signed-off-by: Seena Fallah <seenafallah@gmail.com>
Imran Imtiaz [Thu, 13 Nov 2025 10:27:28 +0000 (10:27 +0000)]
mgr/dashboard: add API endpoint to add images to consistency groups
Signed-off-by: Imran Imtiaz <imran.imtiaz@uk.ibm.com> Fixes: https://tracker.ceph.com/issues/73840
Create a consistency group dashboard API endpoint that enables adding
RBD images to the group.
Shraddha Agrawal [Mon, 17 Nov 2025 19:50:44 +0000 (01:20 +0530)]
qa/clusters/crimson: increase reactors in fixed-1 cluster
Issue: Various different tests were failing randomly due to slow
ops. There was no common ground between them, it was happening
across differnet object stores (seastore and bluestore) and
across different tests.
Cause: Since this is happening quite randomly, this is likely
happening due to low reactor count.
Solution: We are opting the solution to increase reactors used
for testing. I've increased them to 3 from the initial 2 value.