Skip to content

[OSDOCS#17131]: Release Notes CQA for 4.20 - #117190

Open
bjahagir-OpenShift wants to merge 1 commit into
openshift:enterprise-4.20from
bjahagir-OpenShift:OSDOCS-17131-4.20-RN-CQA
Open

[OSDOCS#17131]: Release Notes CQA for 4.20#117190
bjahagir-OpenShift wants to merge 1 commit into
openshift:enterprise-4.20from
bjahagir-OpenShift:OSDOCS-17131-4.20-RN-CQA

Conversation

@bjahagir-OpenShift

@bjahagir-OpenShift bjahagir-OpenShift commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Version(s):
4.20

Issue:
https://redhat.atlassian.net/browse/OSDOCS-17131

Link to docs preview:

QE review:
N/A

Additional information:
This PR is created for 4.20 Release Notes CQA. The size of PR is XXL because the fixed issues and known issues files are bigger. No much content change is made. The modularization is the main aspect.

@openshift-ci openshift-ci Bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Aug 3, 2026
@ocpdocs-previewbot

Copy link
Copy Markdown

🤖 Mon Aug 03 18:31:19 - Prow CI generated the docs preview:

https://117190--ocpdocs-pr.netlify.app/openshift-enterprise/latest/release_notes/ocp-4-20-release-notes.html

|General Availability
|General Availability

|Installing a cluster on Alibaba Cloud by using Assisted Installer

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] OpenShiftAsciiDoc.SuggestAttribute: Use the AsciiDoc attribute '{alibaba}' rather than the plain text product term 'Alibaba Cloud', unless your use case is an exception.

|Technology Preview
|Technology Preview

|SR-IOV Network Operator support for Intel C741 Emmitsburg Chipset

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'chip set' rather than 'Chipset'. For more information, see RedHat.TermsErrors.


Red{nbsp}Hat Marketplace is deprecated::

The Red{nbsp}Hat Marketplace is deprecated. Customers who use the partner software from the Marketplace should contact the software vendor about how to migrate from the Marketplace Operator to an Operator in the Red{nbsp}Hat Ecosystem Catalog. It is expected that the Marketplace index will be removed in an upcoming {product-title} release. For more information, see link:https://access.redhat.com/articles/7130828[Sunset of the Red Hat Marketplace, operated by IBM].

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'withdraw from service', 'withdraw from marketing', 'discontinue', or 'no longer support' rather than 'Sunset'. For more information, see RedHat.TermsErrors.

Review the list of issues resolved in this {product-title} release. You can see if issues affecting your clusters or environments are fixed.

//Bug fix work for TELCODOCS-750
//Bare Metal Hardware Provisioning / OS Image Provider

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'bare-metal Hardware' rather than 'Bare Metal Hardware'. For more information, see RedHat.TermsErrors.

(link:https://issues.redhat.com/browse/OCPBUGS-19856[OCPBUGS-19856])

* Before this update, a bug fix altered the availability set configuration by changing the fault domain count to use the maximum available value instead of being fixed at 2.
This inadvertently caused scaling issues for compute machine sets that were created prior to the bug fix, because the controller attempted to modify immutable availability sets.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'before' rather than 'prior to'. For more information, see RedHat.TermsErrors.

* Before this update, the status of the `ClusterVersion` condition could incorrectly show `ImplicitlyEnabled` instead of `ImplicitlyEnabledCapabilities`. With this release, the `ClusterVersion` condition type is fixed and changed from `ImplicitlyEnabled` to `ImplicitlyEnabledCapabilities`. (link:https://issues.redhat.com/browse/OCPBUGS-56114[OCPBUGS-56114])

[id="ocp-release-note-config-operator-bug-fixes_{context}"]
== config-operator

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Terms: Use 'Operators?' instead of 'operator'.


* Before this update, the Agent-based Installer announced a complete cluster installation without first checking whether Operators were in a stable state. Consequently, messages about a completed installation might have appeared even if there were still issues with any of the Operators. With this release, the Agent-based Installer waits until Operators are in a stable state before declaring the cluster installation to be complete. (link:https://issues.redhat.com/browse/OCPBUGS-18658[OCPBUGS-18658])

* Before this update, the installation program did not prevent you from attempting to install {sno} on bare metal on the installer-provisioned infrastructure. As a consequence, the installation failed because it was not supported. With this release, {product-title} prevents {sno} cluster installations on unsupported platforms. (link:https://issues.redhat.com/browse/OCPBUGS-6508[OCPBUGS-6508])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'installation program' rather than 'the installer'. For more information, see RedHat.TermsErrors.


* Before this update, the Machine Config Operator (MCO) certificate management failed during an Azure Red Hat OpenShift (ARO) upgrade to 4.19 due to missing infrastructure status fields. As a consequence, certificates were refreshed without required Storage Area Network (SAN) IPs, causing connectivity issues for upgraded ARO clusters. With this release, the MCO now adds and retains SAN IPs during certificate management in ARO, preventing immediate rotation on upgrade to 4.19. (link:https://issues.redhat.com/browse/OCPBUGS-59780[OCPBUGS-59780])

* Before this update, when updating from a version of {product-title} prior to 4.15, the `MachineConfigNode` Custom Resource Definitions (CRDs)feature was installed as Technology Preview (TP) causing the update to fail. This feature was fully introduced in {product-title} 4.16. With this release, the update no longer deploys the Technology Preview CRDs, ensuring a successful upgrade. (link:https://issues.redhat.com/browse/OCPBUGS-59723[OCPBUGS-59723])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'before' rather than 'prior to'. For more information, see RedHat.TermsErrors.


* Before this update, the Machine Config Operator (MCO) certificate management failed during an Azure Red Hat OpenShift (ARO) upgrade to 4.19 due to missing infrastructure status fields. As a consequence, certificates were refreshed without required Storage Area Network (SAN) IPs, causing connectivity issues for upgraded ARO clusters. With this release, the MCO now adds and retains SAN IPs during certificate management in ARO, preventing immediate rotation on upgrade to 4.19. (link:https://issues.redhat.com/browse/OCPBUGS-59780[OCPBUGS-59780])

* Before this update, when updating from a version of {product-title} prior to 4.15, the `MachineConfigNode` Custom Resource Definitions (CRDs)feature was installed as Technology Preview (TP) causing the update to fail. This feature was fully introduced in {product-title} 4.16. With this release, the update no longer deploys the Technology Preview CRDs, ensuring a successful upgrade. (link:https://issues.redhat.com/browse/OCPBUGS-59723[OCPBUGS-59723])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Terms: Use 'custom resources?' instead of 'Custom Resource'.


* Before this update, the YAML editor component did not handle some edge cases where the content could not be parsed into a JavaScript object, which caused errors in some situations. With this release, the component was updated to handle these edge cases reliably and the errors no longer occur. (link:https://issues.redhat.com/browse/OCPBUGS-59196[OCPBUGS-59196])

* Before this update, the **Namespace** column displayed on the MachineSets list page even when you viewed a single project, because the code did not correctly scope the columns. With this release, the column logic is fixed. As a result, the MachineSets list no longer shows the **Namespace** column for project-scoped views. (link:https://issues.redhat.com/browse/OCPBUGS-58334[OCPBUGS-58334])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Avoid: Avoid using 'MachineSets'.


* Before this update, the YAML editor component did not handle some edge cases where the content could not be parsed into a JavaScript object, which caused errors in some situations. With this release, the component was updated to handle these edge cases reliably and the errors no longer occur. (link:https://issues.redhat.com/browse/OCPBUGS-59196[OCPBUGS-59196])

* Before this update, the **Namespace** column displayed on the MachineSets list page even when you viewed a single project, because the code did not correctly scope the columns. With this release, the column logic is fixed. As a result, the MachineSets list no longer shows the **Namespace** column for project-scoped views. (link:https://issues.redhat.com/browse/OCPBUGS-58334[OCPBUGS-58334])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Avoid: Avoid using 'MachineSets'.


* Before this update, the generated console dynamic plugin API documentation used the wrong `k8s` utility function names, such as `k8sGetResource` instead of `k8sGet`. With this update, the documentation uses the correct function names with their export name aliases. As a result, the API documentation is clearer for console dynamic plugin developers working with `k8s` utility functions. (link:https://issues.redhat.com/browse/OCPBUGS-56248[OCPBUGS-56248])

* Before this update, unused code in the deployment and deployment configuration menus caused unnecessary menu items to display. With this release, the unused menu item definitions are removed, improving code maintainability and reducing potential issues in future updates. (link:https://issues.redhat.com/browse/OCPBUGS-56245[OCPBUGS-56245])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Avoid: Avoid using 'deployment configuration'.


* Before this update, the custom masthead logo replaced the default OpenShift logo in all themes, even when the light theme was set to use the default. With this release, the correct behavior is restored so the default OpenShift logo displays in the light theme when no custom logo is set. As a result, logos now display correctly in both light and dark themes, improving visual consistency. (link:https://issues.redhat.com/browse/OCPBUGS-55208[OCPBUGS-55208])

* Before this update, changing or removing a custom logo in the Console Operator configuration left outdated `ConfigMaps` in the `openshift-console` namespace due to delayed synchronization. With this release, the console operator removes these outdated `ConfigMaps` when the custom logo configuration changes. As a result, `ConfigMaps` in the `openshift-console` namespace remain accurate and up-to-date. (link:https://issues.redhat.com/browse/OCPBUGS-54780[OCPBUGS-54780])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Terms: Use 'Operators?' instead of 'operator'.


* Before this update, a cluster upgrade caused inconsistent egress IP address allocation due to stale Network Address Translation (NAT) handling. This issue occurred only when you deleted an egress IP pod while the OVN-Kubernetes controller for an egress node was down. As a consequence, duplicate Logical Router Policies and egress IP address usage occurred, which caused inconsistent traffic flow and outage. With this release, egress IP address allocation cleanup ensures consistent and reliable egress IP address allocation in {product-title} 4.20 clusters. (link:https://issues.redhat.com/browse/OCPBUGS-57179[OCPBUGS-57179])

* Previously, when on-premise installer-provisioned infrastructure (IPI) deployments used the Cilium container network interface (CNI), the firewall rule that redirected traffic to the load balancer was ineffective. With this release, the rule works with the Cilium CNI and `OVNKubernetes`. (link:https://issues.redhat.com/browse/OCPBUGS-57065[OCPBUGS-57065])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'installer-provisioned infrastructure' rather than 'IPI'. For more information, see RedHat.TermsErrors.


[role="_abstract"]
// TODO: Update with the relevant information closer to release.
{product-title} (link:https://access.redhat.com/errata/RHSA-2025:9562[RHSA-2025:9562]) is now available. This release uses link:https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.33.md[Kubernetes 1.33] with CRI-O runtime. New features, changes, and known issues that pertain to {product-title} {product-version} are included in this topic.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] AsciiDocDITA.ConceptLink: Move all links and cross references to Additional resources.


[role="_abstract"]
// TODO: Update with the relevant information closer to release.
{product-title} (link:https://access.redhat.com/errata/RHSA-2025:9562[RHSA-2025:9562]) is now available. This release uses link:https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.33.md[Kubernetes 1.33] with CRI-O runtime. New features, changes, and known issues that pertain to {product-title} {product-version} are included in this topic.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] AsciiDocDITA.ConceptLink: Move all links and cross references to Additional resources.

// TODO: Update with the relevant information closer to release.
{product-title} (link:https://access.redhat.com/errata/RHSA-2025:9562[RHSA-2025:9562]) is now available. This release uses link:https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.33.md[Kubernetes 1.33] with CRI-O runtime. New features, changes, and known issues that pertain to {product-title} {product-version} are included in this topic.

{product-title} {product-version} clusters are available at https://console.redhat.com/openshift. From the {hybrid-console}, you can deploy {product-title} clusters to either on-premises or cloud environments.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] AsciiDocDITA.ConceptLink: Move all links and cross references to Additional resources.

//Removed paragraph about the RHEL package because mode workers are removed from 4.19, per Scott Dodson
//Even-numbered release lifecycle verbiage (Comment in for even-numbered releases)

Starting from {product-title} 4.14, the Extended Update Support (EUS) phase for even-numbered releases increases the total available lifecycle to 24 months on all supported architectures, including `x86_64`, 64-bit ARM (`aarch64`), {ibm-power-name} (`ppc64le`), and {ibm-z-name} (`s390x`) architectures. Beyond this, Red{nbsp}Hat also offers a 12-month additional EUS add-on, denoted as _Additional EUS Term 2_, that extends the total available lifecycle from 24 months to 36 months. The Additional EUS Term 2 is available on all architecture variants of {product-title}. For more information about support for all versions, see the link:https://access.redhat.com/support/policy/updates/openshift[Red Hat {product-title} Life Cycle Policy].

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] AsciiDocDITA.ConceptLink: Move all links and cross references to Additional resources.

// Added in 4.14. Language came directly from Kirsten Newcomer.
{product-title} is designed for FIPS. When running {op-system-base-full} or {op-system-first} booted in FIPS mode, {product-title} core components use the {op-system-base} cryptographic libraries that have been submitted to NIST for FIPS 140-2/140-3 Validation on only the `x86_64`, `ppc64le`, and `s390x` architectures.

For more information about the NIST validation program, see link:https://csrc.nist.gov/Projects/cryptographic-module-validation-program/validated-modules[Cryptographic Module Validation Program]. For the latest NIST status for the individual versions of {op-system-base} cryptographic libraries that have been submitted for validation, see link:https://access.redhat.com/articles/2918071#fips-140-2-and-fips-140-3-2[Compliance Activities and Government Standards].

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] AsciiDocDITA.ConceptLink: Move all links and cross references to Additional resources.

// Added in 4.14. Language came directly from Kirsten Newcomer.
{product-title} is designed for FIPS. When running {op-system-base-full} or {op-system-first} booted in FIPS mode, {product-title} core components use the {op-system-base} cryptographic libraries that have been submitted to NIST for FIPS 140-2/140-3 Validation on only the `x86_64`, `ppc64le`, and `s390x` architectures.

For more information about the NIST validation program, see link:https://csrc.nist.gov/Projects/cryptographic-module-validation-program/validated-modules[Cryptographic Module Validation Program]. For the latest NIST status for the individual versions of {op-system-base} cryptographic libraries that have been submitted for validation, see link:https://access.redhat.com/articles/2918071#fips-140-2-and-fips-140-3-2[Compliance Activities and Government Standards].

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] AsciiDocDITA.ConceptLink: Move all links and cross references to Additional resources.

+
There is no supported workaround for this issue. (link:https://issues.redhat.com/browse/OCPBUGS-57440[OCPBUGS-57440])

* When running a pod in an isolated user namespace, the UID/GID inside a pod container no longer matches the UID/GID on the host. For file system ownership to work correctly, the Linux kernel uses ID-mapped mounts, which translate user IDs between the container and the host at the virtual file system (VFS) layer.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Terms: Use 'VFs?' instead of 'VFS'.

+
However, not all file systems currently support ID-mapped mounts, such as Network File Systems (NFS) and other network or distributed file systems. Because such file systems do not support ID-mapped mounts, pods running within user namespaces can fail to access mounted NFS volumes. This behavior is not specific to {product-title}. It applies to all Kubernetes distributions from Kubernetes v1.33 and later.
+
When upgrading to {product-title} 4.20, clusters are unaffected until you opt in to user namespaces. After enabling user namespaces, any pod that is using an NFS-backed persistent volume from a vendor that does not support ID-mapped mounts might experience access or permission issues when running in a user namespace. For more information about enabling user namespaces, see xref:../nodes/pods/nodes-pods-user-namespaces.adoc#nodes-pods-user-namespaces-configuring_nodes-pods-user-namespaces[Configuring Linux user namespace support].

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] OpenShiftAsciiDoc.NoXrefInModules: Do not include xrefs in modules, only assemblies (exception: release notes modules).


* Deleting and recreating test workloads with a BlueField-3 NIC causes clock jumps due to inconsistent PTP synchronization. This disrupts time synchronization in test workloads. The time synchronization stabilizes when the workloads are stable. (link:https://issues.redhat.com/browse/RHEL-93579[RHEL-93579])

* Event logs for GNR-D interfaces are ambiguous due to identical three-letter prefixes ("eno"). As a consequence, affected interfaces are not clearly identified during state changes. To work around this problem, change interfaces used by ptp-operator to follow the "path" naming convention, ensuring per clock events are identified correctly based on interface names and clearly indicate which clock is affected by state changes. For more information, see link:https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/configuring_and_managing_networking/consistent-network-interface-device-naming_configuring-and-managing-networking#network-interface-naming-policies_consistent-network-interface-device-naming[Network interface naming policies]. (link:https://issues.redhat.com/browse/OCPBUGS-62817[OCPBUGS-62817])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Terms: Use 'Operators?' instead of 'operator'.


* The Gateway API implementation currently does not support the automatic idling of services. Unlike standard OpenShift Routes, which can idle services to conserve resources when they are not in use, workloads managed by Gateway API do not automatically scale to zero or enter an idle state based on traffic inactivity.

* The Gateway API implementation currently lacks dedicated integration with the {product-title} web console and the OpenShift CLI (`oc`). Consequently, Gateway API resources, such as `Gateway`, `GatewayClass`, and `HTTPRoute`, do not appear in specific console dashboards or views. To manage these resources, users must utilize standard `oc` commands (for example, `oc get gateway` or `oc edit httproute`) and apply configurations using YAML manifests.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'use' rather than 'utilize'. For more information, see RedHat.TermsErrors.


* Firmware updates on Hewlett Packard Enterprise (HPE) DL110G11 servers and similar models may fail due to a bug that is specific to this hardware, caused by the way the 'NetworkAdapters' resource is implemented. It may become unavailable during the update and cause the update to fail. To work around this issue, manually update the Baseboard Management Controller (BMC) firmware outside Ironic to avoid service disruption. (link:https://issues.redhat.com/browse/OCPBUGS-60708[*OCPBUGS-60708*])

* Booting the `Baremetalhost` object into the correct `operating system` repeatedly fails on certain BMC firmware versions due to the SuperMicro ARS-111GL-NHR server booting into an existing hard drive instead of virtual media. This issue arises from an updated BIOS and bare metal host firmware, making CD unsupported while USB CD works. Consequently, the node inspection fails. If impacted, to work around this problem, manually set the `BootSourceOverrideTarget` to be USB CD instead of CD, and boot the node from the correct virtual media. (link:https://issues.redhat.com/browse/OCPBUGS-61851[*OCPBUGS-61851*])

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'bare-metal host' rather than 'bare metal host'. For more information, see RedHat.TermsErrors.

@openshift-ci

openshift-ci Bot commented Aug 3, 2026

Copy link
Copy Markdown

@bjahagir-OpenShift: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/validate-portal 4178f9d link true /test validate-portal

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants