Skip to content

High latency bundles - #5826

Open
Robert Johnson (LTA-Thinking) wants to merge 5 commits into
mainfrom
rojo-microsoft-high-latency-bundles
Open

Robert Johnson (LTA-Thinking) wants to merge 5 commits into
mainfrom
rojo-microsoft-high-latency-bundles

Conversation

@LTA-Thinking

@LTA-Thinking Robert Johnson (LTA-Thinking) commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Description

Adds a new header to allow for extra large bundles by having a user acknowledge that it will lead to higher latency.

Related issues

Addresses User Story 195349

Testing

New tests added

FHIR Team Checklist

  • Update the title of the PR to be succinct and less than 65 characters
  • Add a milestone to the PR for the sprint that it is merged (i.e. add S47)
  • Tag the PR with the type of update: Bug, Build, Dependencies, Enhancement, New-Feature or Documentation
  • Tag the PR with Open source, Azure API for FHIR (CosmosDB or common code) or Azure Healthcare APIs (SQL or common code) to specify where this change is intended to be released.
  • Tag the PR with Schema Version backward compatible or Schema Version backward incompatible or Schema Version unchanged if this adds or updates Sql script which is/is not backward compatible with the code.
  • When changing or adding behavior, if your code modifies the system design or changes design assumptions, please create and include an ADR.
  • CI is green before merge Build Status
  • Review squash-merge requirements

Semver Change (docs)

Patch|Skip|Feature|Breaking (reason)

RB Johnson (He/Him) and others added 5 commits September 17, 2026 08:13
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@LTA-Thinking Robert Johnson (LTA-Thinking) added Enhancement Enhancement on existing functionality. Azure API for FHIR Label denotes that the issue or PR is relevant to the Azure API for FHIR Azure Healthcare APIs Label denotes that the issue or PR is relevant to the FHIR service in the Azure Healthcare APIs No-PaaS-breaking-change labels Sep 17, 2026
@LTA-Thinking Robert Johnson (LTA-Thinking) changed the title Rojo microsoft high latency bundles High latency bundles Sep 17, 2026
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 78.87%. Comparing base (66654af) to head (63259b9).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #5826      +/-   ##
==========================================
+ Coverage   78.16%   78.87%   +0.70%     
==========================================
  Files        1017     1017              
  Lines       36996    37010      +14     
  Branches     5644     5650       +6     
==========================================
+ Hits        28917    29190     +273     
+ Misses       6686     6420     -266     
- Partials     1393     1400       +7     

see 20 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@@ -0,0 +1,49 @@
# High-Latency Bundle Processing

@fhibf Fernando Henrique Inocêncio Borba Ferreira (fhibf) Sep 18, 2026

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.

I think high-latency is the wrong term.
I've been running tests with bundles with more than 1k conditional-operations, and they are taking 6 seconds to execute. That's not high latency based on the complexity of this type of requests.

I suggest we follow a different perspective: if customer uses a header like "x-ms-bundle-large-operations" we always handle them as parallel. That will save us time and not cause high latency. And we should probably, with the presence of this flag, assume some behaviors to optimize the execution time.

With this flag, we can also report this execution as part of a different SLI/SLO, and that should not affect our existing limits.

/// <summary>
/// Gets or sets the maximum number of entries allowed when high-latency bundle processing is enabled.
/// </summary>
public int EntryLimitHighLatency { get; set; } = 1000;

Choose a reason for hiding this comment

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

Could we rename this property to "EntryExpandedLimit"?

}
}

private int GetEntryLimit()

Choose a reason for hiding this comment

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

Maybe GetEntryExtendedLimit()?

},
"Bundle": {
"EntryLimit": 500,
"EntryLimitHighLatency": 1000,

Choose a reason for hiding this comment

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

EntryExtendedLimit?

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

Labels

Azure API for FHIR Label denotes that the issue or PR is relevant to the Azure API for FHIR Azure Healthcare APIs Label denotes that the issue or PR is relevant to the FHIR service in the Azure Healthcare APIs Enhancement Enhancement on existing functionality. No-PaaS-breaking-change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants