Chapter 6. Notable Bug Fixes


This section describes bugs fixed in this release of Red Hat Ceph Storage that have significant impact on users.

Sync point snapshots are now properly removed after a failover or failback

In a RADOS Block Device (RBD) mirroring configuration, sync point snapshots created by the rbd-mirror daemon incorrectly remained on the clusters after a failover or failback. This update fixes this behavior, and sync point snapshots are now properly removed as expected. (BZ#1350003)

The ceph-disk service no longer fails because of limited resources

After installation of a new Ceph storage cluster, failed instances of the ceph-disk service appeared because the service was started twice: once to activate the data partition, and once to activate the journal partition. After the disk activation, one of these instances failed because of limited resources. With this update, the instance without the resources terminates with the 0 exit status and an informative message is returned. (BZ#1326740)

Bucket creation no longer fails after upgrading Red Hat Ceph Storage 1.3 to 2.0

Previously, after upgrading an Ceph Object Gateway node from Red Hat Ceph Storage 1.3 to 2.0, an attempt to create a bucket failed. This bug has been fixed, and bucket creation no longer fails in this case. (BZ#1352888)

Ceph Object Gateway now deletes large buckets in parallel

Previously, the Ceph Object Gateway was unable to delete multiple large buckets at the same time. As a consequence, the process of deleting large buckets containing millions of objects was slow. A patch has been applied, and the Ceph Object Gateway now deletes large buckets in parallel, which makes the whole process significantly faster. (BZ#1318409)

RBD mirroring is now properly disabled even if peer clusters are not removed first

Disabling RADOS Block Device (RBD) mirroring in pool mode consists of two steps:

  1. Removing peer clusters by using the rbd mirror pool remove command.
  2. Disabling pool mirroring by using the rbd mirror pool disable command.

Previously, if pool mirroring was disabled before removing the peer clusters, all the existing images on the mirrored pool stopped being replicated but the pool remained mirrored. As a consequence, newly created images on the pool were still replicated.

In addition, an error message similar to the following one was returned:

2016-08-02 10:30:31.823726 7f96fd7e8d80 -1 librbd: Failed to set mirror mode: (16) Device or resource busy

This update fixes this inconsistent state if disabling RBD mirroring is attempted before peer clusters are removed. (BZ#1362647)

Ceph Object Gateway now supports new token formats with the Keystone integration

Users can now use the following token formats for Keystone authentication:

  • PKIZ - compressed Public Key Infrastructure (PKI)
  • Fernet (BZ#1300855)

The radosgw-admin command no longer returns unnecessary error messages

The log level of certain common error messages that are returned by the radosgw-admin command was set to 0. Consequently, these messages appeared even though radosgw-admin command succeeded. The log level of these messages has been increased, and the messages no longer appear if radosgw-admin succeeds. (BZ#1364353)

Ceph log messages are now LOG_INFO priority

Previously, Ceph log messages had the LOG_DEBUG priority. However, with the default syslog configuration, LOG_DEBUG messages do not appear in the logs. With this update, Ceph log messages have LOG_INFO priority, ensuring that they appear in the logs. (BZ#1378675)

A restart of the radosgw process is no longer required after switching the zone from master to non-master

When a non-master zone was promoted to the master zone, all I/0 requests became unresponsive until the radosgw process was restarted on both zones. Consequently, the I/0 requests timed out. The underlying source code has been modified, and restarting radosgw is no longer required in the described situation. (BZ#1359712)

Image synchronization no longer starts from the beginning after restarting rbd-mirror

When the rbd-mirror daemon was restarted during image synchronization, the synchronization started from the beginning. With this update, the sync point object number is updated periodically during the synchronization. As a result, the image synchronization no longer starts from the beginning after restarting rbd-mirror. (BZ#1348940)

Certain maintenance image operations are no longer incorrectly allowed on non-primary images

With RADOS Block Device (RBD) mirroring enabled, non-primary images are expected to be read-only. Under certain conditions, the rbd command did not properly restrict rbd maintenance operations against non-primary images. The affected operations included:

  • updating snapshots
  • resizing images
  • renaming and creating clones using the non-primary image as the parent

With this update, these operations are disallowed on non-primary images as expected. (BZ#1348928, BZ#1352878, BZ#1349332)

Calamari no longer hangs when interactive commands are issued

Previously, the Calamari REST API incorrectly attached a standard input to interactive commands, such as rbd import. When these commands were executed from Calamari, the Calamari user interface became unresponsive because it waited for an action from the user. The underlying source code has been modified, and Calamari no longer hangs when interactive commands are issued. (BZ#1354459)

FUSE clients can now be mounted permanently on Red Hat Enterprise Linux 7.3

Previously, the util-linux package shipped with Red Hat Enterprise Linux 7.2 did not support mounting the CephFS File System in User Space (FUSE) clients in the /etc/fstab file. Red Hat Enterprise Linux 7.3 now includes a new version of util-linux that supports mounting CephFS FUSE clients permanently in /etc/fstab. (BZ#1360849)

Enabling write-back cache no longer causes potential data corruption

Previously, cache read requests were not properly handled if a subsection of an in-progress read operation was interrupted with an unrelated I/O operation. As a consequence, when librbd and ceph-fuse write-back cache was enabled, read requests serviced through the cache were in some cases corrupted. With this update, the incoming read result from the OSD nodes is properly reconstructed if a split is encountered. As a result, the cache return the expected data in the described situation. (BZ#1392136)

S3 versioning can now be set on buckets when accessing a non-master zone

Previously, it was not possible to set Amazon Simple Storage Service (S3) object versioning on buckets when accessing any zone other than the metadata master zone. The underlying source code has been modified, and S3 versioning can now be set on buckets when accessing a non-master zone as expected. (BZ#1350522)

Renaming snapshots no longer returns errors on overloaded clusters

When a Ceph Storage Cluster was overloaded and an image was in-use for I/O operations, performing rename requests sometimes took unexpectedly long. Consequently, the RADOS Block Device (RBD) CLI kept sending the rename request every 5 seconds because it received a message that the request had timed out. This caused error messages were returned in the logs of the process performing the I/O operations on the image. This update fixes this bug, and the error log messages are no longer returned in the described scenario. (BZ#1340772)

Error messages are no longer returned after disabling journaling

When the journaling feature was disabled on an image that was previously mirrored by the rbd-mirror daemon, an error message similar to the following was returned on the primary cluster:

2016-06-15 22:10:40.462481 7fed3d10b700 -1 rbd::mirror::ImageReplayer: 0x7fecd8003b80 [1/29d86f79-7bba-4316-9ab9-c8a3f600e0f2] operator(): start failed: (2) No such file or directory

These harmless error messages indicated that the image journal was deleted because journaling was disabled. The underlying source code has been modified, and the error messages are no longer returned in the described situation. (BZ#1346946)

"rbd-mirror" no longer synchronizes images from the beginning after their demotion and promotion

With RADOS Block Device (RBD) mirroring enabled, an image can be demoted to non-primary on one cluster and promoted to primary on a peer cluster. Previously, when this happened, the rbd-mirror daemon started to synchronize the newly demoted image with the newly promoted image even though the image was already successfully synchronized. This behavior has been fixed, and rbd-mirror no longer synchronizes images from the beginning after their demotion and promotion. (BZ#1349955)

Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.