Skip to content

fix(trino): Backport airlift/airlift#1943 for max response header size#1510

Merged
dervoeti merged 8 commits into
mainfrom
feat/trino-airlift-http-response-size-patch
May 28, 2026
Merged

fix(trino): Backport airlift/airlift#1943 for max response header size#1510
dervoeti merged 8 commits into
mainfrom
feat/trino-airlift-http-response-size-patch

Conversation

@dervoeti
Copy link
Copy Markdown
Member

@dervoeti dervoeti commented May 26, 2026

Description

Backport airlift/airlift#1943 into the Airlift dependency shipped with Trino, so Jetty actually honours the configured max response header size (calls setMaxResponseHeaderSize in addition to setResponseHeaderSize).

To do that, a new trino/airlift image is added that builds Airlift from source and applies the patch. The existing trino/trino build then uses this patched Airlift instead of the original dependency.

Two Airlift versions are patched, matching what Trino expects:

  • Airlift 361 for Trino 477
  • Airlift 386 for Trino 479

Once airlift/airlift#1943 is merged and Trino picks up a new Airlift release that contains the fix, the entire trino/airlift directory and the airlift-builder stage in trino/trino/Dockerfile can be removed again.

Smoke test passes:

--- PASS: kuttl (586.26s)
    --- PASS: kuttl/harness (0.00s)
        --- PASS: kuttl/harness/smoke_trino-477,oci.stackable.tech_sandbox_trino_477-stackable0.0.0-dev-amd64_hive-4.2.0_opa-1.12.3_hdfs-3.4.2_zookeeper-3.9.4_openshift-false (586.22s)

Definition of Done Checklist

  • Changes are OpenShift compatible
  • All added packages (via microdnf or otherwise) have a comment on why they are added
  • Things not downloaded from Red Hat repositories should be mirrored in the Stackable repository and downloaded from there
  • All packages should have (if available) signatures/hashes verified
  • Add an entry to the CHANGELOG.md file
  • Integration tests ran successfully
TIP: Running integration tests with a new product image

The image can be built and uploaded to the kind cluster with the following commands:

boil build <IMAGE> --image-version <RELEASE_VERSION> --strip-architecture --load
kind load docker-image <MANIFEST_URI> --name=<name-of-your-test-cluster>

See the output of boil to retrieve the image manifest URI for <MANIFEST_URI>.

@dervoeti dervoeti moved this to Development: Waiting for Review in Stackable Engineering May 26, 2026
@dervoeti dervoeti self-assigned this May 26, 2026
@dervoeti dervoeti force-pushed the feat/trino-airlift-http-response-size-patch branch from f287ad7 to ebb343b Compare May 26, 2026 16:34
@sbernauer
Copy link
Copy Markdown
Member

There was an upstream review, which is great! I would suggest to wait with merging this until the upstream PR is merged or sufficient time is passed without review feedback.
Just that we don't e.g. introduce new bugs are take a performance hit.

@dervoeti
Copy link
Copy Markdown
Member Author

@sbernauer The patch has been merged upstream, I updated the patch here so it also includes the MaxDataSize annotation that I added in the upstream PR.

Comment thread trino/trino/boil-config.toml
@sbernauer sbernauer moved this from Development: Waiting for Review to Development: In Review in Stackable Engineering May 28, 2026
@dervoeti dervoeti requested a review from sbernauer May 28, 2026 07:14
Copy link
Copy Markdown
Member

@sbernauer sbernauer left a comment

Choose a reason for hiding this comment

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

There was an ask for a test upstream, I let you decide if you want to wait with merge until we figured that out

@dervoeti dervoeti added this pull request to the merge queue May 28, 2026
Merged via the queue into main with commit 959101d May 28, 2026
3 checks passed
@dervoeti dervoeti deleted the feat/trino-airlift-http-response-size-patch branch May 28, 2026 07:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Development: In Review

Development

Successfully merging this pull request may close these issues.

2 participants