Skip to content

[6.1.7 Cherry-pick] AE tests: create ConversionTests keys once per class to slow error 3807 identifier exhaustion - #4486

Merged
paulmedynski merged 2 commits into
release/6.1from
dev/automation/pr-4478-to-6.1.7
Jul 31, 2026
Merged

[6.1.7 Cherry-pick] AE tests: create ConversionTests keys once per class to slow error 3807 identifier exhaustion#4486
paulmedynski merged 2 commits into
release/6.1from
dev/automation/pr-4478-to-6.1.7

Conversation

@github-actions

@github-actions github-actions Bot commented Jul 29, 2026

Copy link
Copy Markdown

Description

Backports #4478 to release/6.1.

This change creates the Always Encrypted ConversionTests keys once per test class instead of once per test, slowing SQL Server error 3807 identifier exhaustion. The backport also adds the new ConversionTestFixture to the ManualTests project's explicit compile list.

There are no public API changes.

Issues

Backport of #4478.

Testing

Not run locally. This is a release-branch backport of existing manual test coverage; the release branch's explicit compile list was updated for the new fixture.

@github-actions github-actions Bot added this to the 6.1.7 milestone Jul 29, 2026
@github-project-automation github-project-automation Bot moved this to To triage in SqlClient Board Jul 29, 2026
@azure-pipelines

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

@paulmedynski
paulmedynski force-pushed the dev/automation/pr-4478-to-6.1.7 branch from 333b05f to 2d882aa Compare July 30, 2026 16:31
@paulmedynski paulmedynski changed the title [6.1.7 Cherry-pick - CONFLICTS] AE tests: create ConversionTests keys once per class to slow error 3807 identifier exhaustion [6.1.7 Cherry-pick] AE tests: create ConversionTests keys once per class to slow error 3807 identifier exhaustion Jul 30, 2026
@paulmedynski
paulmedynski marked this pull request as ready for review July 30, 2026 16:32
@paulmedynski
paulmedynski requested a review from a team as a code owner July 30, 2026 16:32
Copilot AI review requested due to automatic review settings July 30, 2026 16:32
@paulmedynski paulmedynski self-assigned this Jul 30, 2026
@paulmedynski paulmedynski moved this from To triage to In review in SqlClient Board Jul 30, 2026
@paulmedynski
paulmedynski enabled auto-merge (squash) July 30, 2026 16:33
@paulmedynski

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.

Copilot AI 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.

Pull request overview

Backports the Always Encrypted (AE) manual test change that reduces SQL Server error 3807 (“all available identifiers have been exhausted”) by creating the ConversionTests CMK/CEK once per test class (xUnit class fixture) instead of once per test case.

Changes:

  • Adds ConversionTestFixture to create/drop a single CMK/CEK per test class across the AE setup connection strings.
  • Refactors ConversionTests to consume the fixture’s shared CEK and removes per-test CMK/CEK creation/teardown.
  • Updates the ManualTests project’s explicit compile list to include the new fixture file.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTesting.Tests.csproj Adds the new fixture to the ManualTests explicit compile includes.
src/Microsoft.Data.SqlClient/tests/ManualTests/AlwaysEncrypted/TestFixtures/ConversionTestFixture.cs Introduces a class fixture that creates CMK/CEK once per class and drops them on dispose.
src/Microsoft.Data.SqlClient/tests/ManualTests/AlwaysEncrypted/ConversionTests.cs Switches to IClassFixture<ConversionTestFixture> and removes per-test key creation/drop logic.

@paulmedynski
paulmedynski merged commit e95ad4d into release/6.1 Jul 31, 2026
278 checks passed
@paulmedynski
paulmedynski deleted the dev/automation/pr-4478-to-6.1.7 branch July 31, 2026 18:26
@github-project-automation github-project-automation Bot moved this from In review to Done in SqlClient Board Jul 31, 2026
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.

4 participants