Skip to content

THRIFT-6132: Reset Ruby Header metadata between frames - #3688

Merged
kpumuk merged 1 commit into
apache:masterfrom
kpumuk:rb-header-metadata-reset
Jul 30, 2026
Merged

THRIFT-6132: Reset Ruby Header metadata between frames#3688
kpumuk merged 1 commit into
apache:masterfrom
kpumuk:rb-header-metadata-reset

Conversation

@kpumuk

@kpumuk kpumuk commented Jul 30, 2026

Copy link
Copy Markdown
Member

Ruby HeaderTransport currently preserves key-value headers from a Header frame when the same connection switches to a legacy framed or unframed Binary or Compact message. Applications can therefore observe metadata from an earlier request while processing a later message that did not carry it.

Reset read headers at the start of every frame parse, before protocol detection and validation. Legacy protocol switches and malformed following frames now expose an empty header map, while each later valid Header frame exposes only its own metadata.

  • Did you create an Apache Jira ticket? THRIFT-6132
  • If a ticket exists: Does your pull request title follow the pattern "THRIFT-NNNN: describe my issue"?
  • Did you squash your changes to a single commit? (not required, but preferred)
  • Did you do your best to avoid breaking changes? If one was needed, did you label the Jira ticket with "Breaking-Change"?
  • If your change does not involve any code, include [skip ci] anywhere in the commit message to free up build resources.

Client: rb

Co-Authored-By: OpenAI Codex (GPT-5.6) <codex@openai.com>
Copilot AI review requested due to automatic review settings July 30, 2026 01:19

This comment was marked as spam.

@mergeable mergeable Bot added the ruby Pull requests that update Ruby code label Jul 30, 2026
@kpumuk
kpumuk merged commit eac5f4f into apache:master Jul 30, 2026
95 checks passed
@kpumuk
kpumuk deleted the rb-header-metadata-reset branch July 30, 2026 22:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ruby Pull requests that update Ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants