Issues Resolved in DataCore Puls8 v4.6

This section lists the issues and defects that have been addressed in this release, along with their corresponding fixes.

The items below detail the resolved problems:

MinIO Image Pull Failures for Loki

Resolved an issue where the MinIO pods that provide object storage for Loki could fail to start with ImagePullBackOff. The images were served from quay.io/minio and are now served from docker.io/openebs, with the same image tags. Air-gapped installations must mirror the new repository paths. Refer to the Installing DataCore Puls8 in an Air-Gapped Environment documentation for the updated values.

Backup and Restore Status Not Reported for Local PV ZFS

Resolved an issue where a failed Local PV ZFS backup or restore could remain in Init or be reported as Done. A failure on either side of a transfer is now reported as Failed and stops the other side. A transfer that previously reported Done may be reported as Failed after upgrading, which reflects its real outcome.

Block-Mode Snapshot Export Failures with Veeam Kasten

Resolved an issue where snapshot export operations failed for Replicated PV Mayastor volumes used in block mode with Veeam Kasten backups. The nexus block device size could be short by one block because volume sizing did not account for label metadata. Volume sizing now includes this metadata, so usable capacity always meets the requested size and block-mode PVCs export successfully.

Deleted Storage Pools Recreated by the DiskPoolClaim Operator

Resolved an issue where kubectl puls8 mayastor delete pool and delete node with --cleanup-dsp deleted DiskPool custom resources directly. When a DiskPool was owned by a DiskPoolClaim, the claim was left behind and the operator promptly recreated the pool. The plugin now deletes the owning claim and lets the operator's finalizer cascade-delete the DiskPool, while pools with no owning claim continue to be deleted directly. DiskPoolClaim and DiskPool custom resources no longer need to be removed manually after an offline purge.

Node and Pool Label Commands Rejected Standard Kubernetes Label Keys

Resolved an issue where label keys containing a forward slash, including standard Kubernetes keys such as topology.kubernetes.io/zone, were rejected by the node cordon, uncordon, drain, and label-deletion commands, and by pool label deletion.

Command Timeouts During Support Data Collection

Resolved an issue where the shared --timeout default of 10 seconds was too short for the operations it covered, particularly Loki queries and Loki auto-discovery during support bundle collection. The default is now 30 seconds per request.

Duplicate Events in Support Dumps and Log Output

Resolved an issue where log and event pagination used the timestamp of the last stream rather than the newest timestamp across all streams. When multiple streams were present, the cursor could move backwards in time and re-fetch entries already seen, producing duplicates in get events, in events.ndjson, and in the per-pod log files of any component running multiple replicas.

Output Record Limit Not Enforced

Resolved an issue where the --limit option did not reliably restrict the number of records in command output. Records are now truncated before being printed.

Volume Expansion and Rebuild Accounting Defects

Resolved two defects in the Replicated PV Mayastor control plane: the per-node rebuild count was not refreshed when a single nexus was updated, which could cause the system-wide rebuild limit to be applied incorrectly; and a nexus resize could be retried before its undersized replicas had been resized, causing volume expansion to fail.

Incorrect Pool Capacity Accounting for Snapshot Clones

Resolved an issue where pool capacity accounting did not include space consumed by the creation of snapshot clones, which could lead to over-commitment of pool space.

Devices Detached on Transient I/O Errors

Resolved an issue where a block device could be incorrectly detached in response to a transient I/O submission error.

Nexus Shutdown and Unshare Reliability

Resolved issues where frozen I/Os from a shutdown nexus were not aborted on unshare, and where closure of a child device was not correctly awaited.

Pool Listing Failure During Replica Destruction

Resolved a race condition where listing storage pools while replicas were being destroyed could cause the operation to fail.

Unnecessary REST API Pod Restarts

Resolved an issue where the Replicated PV Mayastor REST API health probes were too aggressive, restarting a pod that was still starting normally. Probe failure thresholds and initial delays have been adjusted. A related issue where a readiness failure was cached before the first successful probe has also been fixed.

Local PV LVM Volume Expansion Not Idempotent

Resolved an issue in Local PV LVM where node expansion was not consistently required during a resize, so repeating an expand operation did not behave idempotently.

Local PV Hostpath File Permissions and Cleanup Defects

Resolved an issue in Local PV Hostpath where the FilePermissions mode was not honored in node-deployment mode, and an issue where volume cleanup could reset the XFS project quota on pipes.