Greetings,

This is the second minor release in the Tentacle series.

We recommend that all users update to this release.

Notable Changes
---------------

Rocky 10 package-based installs are now supported starting with
v20.2.2. Please see the supported platforms (
https://docs.ceph.com/en/latest/start/os-recommendations/#platforms )
or current and planned support in Ceph.

MDS (Metadata Server)
---------------------

* Segmentation fault fixed due to incorrect queueing of request retries.

OSD (Object Storage Daemon)
---------------------------

* PGLog Missed List: Fixed a bug to ensure the correct version is
attached to the missing list when ignoring log entries.
* Data Integrity Asserts: Added assertions to explicitly catch
potential corruption in the OSD missing list.

RGW (RADOS Gateway)
-------------------

* Lifecycle Management: Fixed lifecycle transition issues affecting
encrypted multipart objects.
* REST & Query Handling: RESTArgs::get_string() now properly
URL-decodes incoming query parameters.

RADOS / librados / neorados
---------------------------

* Linger Operations: Rewrote safety checks to eliminate use-after-free
vulnerabilities and LingerOp memory leaks when an unwatch operation
returns ENOTCONN. Replaced the flawed is_valid_watch() check with a
safe linger_by_cookie() lookup which safely manages LingerOp
references using intrusive_ptr. Ensured librados linger callbacks hold
a persistent reference to LingerOp to protect against races with
simultaneous linger_cancel() requests. Configured
librados::IoCtxImpl::aio_unwatch() to asynchronously deliver ENOTCONN
to AioCompletion instead of returning the error directly.
* Watch/Notify: Fixed neorados notification queue bounds enforcement
so that an overflow marker is only appended on the first message
exceeding capacity, rather than duplicating it on every subsequent
message. Prevented double-cleanup triggers in watch/notify operations
when incoming errors arrive after maybe_cleanup() runs. Fixed a bug
where notify would lose original error values by ensuring it no longer
attempts to decode empty responses. Enhanced io_context shutdown
procedures to clear handlers and route cleanly through linger_cancel
to avoid use-after-free states.
* Async Utilities: Fixed an issue regarding the improper removal of
objects from the async service list.

Dashboard
-----------------

* NVMeoF Revamp: Complete UI overhaul with DHCHAP controller key
support, namespace encryption, and secure listeners configuration.
* Pools & RGW: Added stretch cluster validation for pools, fixed RGW
restart/stop issues, storage class restrictions, sync policy fixes,
and MSR EC Profile support.
* NFS: Toggle visibility for CephFS snapshots, fixed export creation
and path value consistency issues

ceph-volume
-----------

* Inventory Scanning: Enhanced inventory discovery logic to
automatically skip RAM disk devices (/dev/ram*).

External Block Device (extblkdev)
---------------------------------

* Plugin Stability: Fixed an assertion failure in the FCM plugin when
encountering multivolume devices.

Testing & QA (Suites / Tooling)
-------------------------------

* OS Testing: Added CentOS 9 Stream as a supported host OS for the
tentacle-p2p stress-split suite.
* Dependency & Compilation: Configured bare-metal upgrade testing
workloads (rbd-python) to inject python3-pytest via system packages to
prevent test failures. Patched the blogbench workunit in qa/cephfs to
gracefully handle "implicit declaration of function" warnings
generated by newer GCC versions. Updated Lua scripts in qa/cephfs to
respect missing kernels in the YAML configurations.
* Boto3 Migration: Replaced outdated boto2 dependencies with boto3
across qa/radosgw_admin and qa/radosgw_admin_rest test frameworks,
removing stale request log components and ACL test cases.
* Tools: Resolved a crash occurring in tools/ceph-kvstore-tool during
database closures, reduced BlueStore header exposure, and added
missing compiler guards (WITH_BLUESTORE).

We recommend users to update to this release.
For detailed release notes with links & changelog please refer to the
official blog entry at
https://ceph.io/en/news/blog/2026/v20-2-2-tentacle-released/

Getting Ceph
------------
* Git at git://github.com/ceph/ceph.git
* Tarball at https://download.ceph.com/tarballs/ceph-20.2.2.tar.gz
* Containers at https://quay.io/repository/ceph/ceph
* For packages, see https://docs.ceph.com/en/latest/install/get-packages/
* Release git sha1: 0fcffee29411e3a38036764817b6e1afc59741cc



-- 
Patrick Donnelly, Ph.D.
He / Him / His
Red Hat Partner Engineer
IBM, Inc.
GPG: 19F28A586F808C2402351B93C3301A3E258DD79D
_______________________________________________
ceph-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to