Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1886214

Summary: Need to disable HTX when not using HTTP/2 in order to preserve HTTP header name case
Product: OpenShift Container Platform Reporter: OpenShift BugZilla Robot <openshift-bugzilla-robot>
Component: NetworkingAssignee: Miciah Dashiel Butler Masters <mmasters>
Networking sub component: router QA Contact: Hongan Li <hongli>
Status: CLOSED ERRATA Docs Contact:
Severity: high    
Priority: high CC: aos-bugs
Version: 4.4   
Target Milestone: ---   
Target Release: 4.5.z   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-12-08 18:26:14 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1886213    
Bug Blocks: 1886215    

Comment 1 Miciah Dashiel Butler Masters 2020-10-26 05:20:54 UTC
Fix is posted but blocked on verification of the 4.6.z backport and will need cherry-pick-approved label.

Comment 2 Miciah Dashiel Butler Masters 2020-11-14 00:50:00 UTC
The bump to HAProxy 2.2 may block this change if the bump affects OCP 4.5 because HAProxy 2.2 removes the "http-use-htx" option (see bug 1897039).  Need to investigate in the upcoming sprint.

Comment 3 Miciah Dashiel Butler Masters 2020-11-16 22:00:35 UTC
(In reply to Miciah Dashiel Butler Masters from comment #2)
> The bump to HAProxy 2.2 may block this change if the bump affects OCP 4.5
> because HAProxy 2.2 removes the "http-use-htx" option (see bug 1897039). 
> Need to investigate in the upcoming sprint.

The bump to HAProxy 2.2 only affects OpenShift 4.7 because it requires a change to the Dockerfiles, and that change has not been backported to earlier release branches, so we can go ahead with turning off HTX in 4.5.

Comment 4 Hongan Li 2020-11-25 06:03:10 UTC
verified with 4.5 cluster (4.5.0-0.ci.test-2020-11-25-031041-ci-ln-12r8cik) launched by cluster-bot and passed

sh-4.2$ printenv | grep -i http2
ROUTER_DISABLE_HTTP2=true
sh-4.2$ 
sh-4.2$ cat haproxy.config | grep htx
  no option http-use-htx
sh-4.2$ 
sh-4.2$ haproxy -v
HA-Proxy version 2.0.14 2020/04/02 - https://haproxy.org/
sh-4.2$ 

# curl http://router-headers.example.com --resolve "router-headers.example.com:80:34.74.176.177" -H X-foo:foo -H X-Bar:Bar -H X-BaZ:BaZ
GET / HTTP/1.1
User-Agent: curl/7.61.1
Accept: */*
X-foo:foo
X-Bar:Bar
X-BaZ:BaZ
Host: router-headers.example.com
X-Forwarded-Host: router-headers.example.com
X-Forwarded-Port: 80
X-Forwarded-Proto: http
Forwarded: for=66.187.232.129;host=router-headers.example.com;proto=http
X-Forwarded-For: 66.187.232.129

Comment 8 errata-xmlrpc 2020-12-08 18:26:14 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (OpenShift Container Platform 4.5.22 bug fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:5250