Skip to content

[6.1.8 Cherry-pick] Fix HasRows detection after multiple INFO tokens - #4898

Merged
mdaigle merged 2 commits into
release/6.1from
dev/automation/pr-4773-to-6.1.8
Oct 26, 2026
Merged

mdaigle merged 2 commits into
release/6.1from
dev/automation/pr-4773-to-6.1.8

Conversation

@github-actions

Copy link
Copy Markdown

Cherry-pick of #4773 (06d0e99) into release/6.1.

* Fix HasRows detection after multiple INFO tokens

Consume consecutive INFO tokens in both reader metadata paths while preserving deferred informational events. Add sync/async regression coverage for populated and empty results, SQL Server integration coverage, and updated HasRows documentation.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Cover alternate metadata HasRows processing

Add crafted ALTMETADATA and ALTROW responses with sync/async coverage, regular-row and alternate-only cases, and deferred INFO delivery assertions. Verify the regression detects removal of the alternate metadata fix.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Guard HasRows INFO loops against closed parsers

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Expand HasRows response coverage and share INFO processing

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Preserve HasRows behavior for closed parsers

Stop the INFO loop without throwing when the parser is closed or broken, retaining the prior no-row result and unchanged token state.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Clarify HasRows regression scenarios

Split the response matrix into named sync and async theories with typed data and explicit setup/assertion sections. Preserve the full wire matrix and driver behavior while clarifying null arguments and private helper placement.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Handle INFO tokens before ORDER in HasRows detection

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 81f603e3-97ec-45ff-9bb0-52ab65ba5e3c

* Guard HasRows ORDER processing against unavailable parsers

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7c53fcdb-6763-414c-84c1-104507dd7379

---------

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 81f603e3-97ec-45ff-9bb0-52ab65ba5e3c
Copilot-Session: 7c53fcdb-6763-414c-84c1-104507dd7379
@github-actions
github-actions Bot requested a review from a team as a code owner October 22, 2026 05:51
@github-actions github-actions Bot added this to the 6.1.8 milestone Oct 22, 2026
@github-project-automation github-project-automation Bot moved this to To triage in SqlClient Board Oct 22, 2026
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@priyankatiwari08 priyankatiwari08 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks good — diff identical to merged #4773

@mdaigle

mdaigle commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

/azp run

@mdaigle
mdaigle enabled auto-merge (squash) October 22, 2026 20:38
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).
3 pipeline(s) were filtered out due to trigger conditions.

@mdaigle mdaigle linked an issue Oct 23, 2026 that may be closed by this pull request
Preserve .NET Framework's synthesized aggregate name and .NET's unnamed column behavior in HasRows regression tests.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: df53500a-a50f-41f8-bd18-336714b03cee
@priyankatiwari08

Copy link
Copy Markdown
Contributor

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).
3 pipeline(s) were filtered out due to trigger conditions.

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

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

[6.1] Backport #4773

6 participants