Skip to content

fix: [Cosmos] Rename HA recommendation and extend it to cover PPAF feature - #848

Open
Tomas Kovarik (tomtronic) wants to merge 3 commits into
mainfrom
tomtronic-patch-2
Open

Tomas Kovarik (tomtronic) wants to merge 3 commits into
mainfrom
tomtronic-patch-2

Conversation

@tomtronic

Copy link
Copy Markdown
Contributor

Achieving 5 9's availability previously required enabling multi-region writes capability. However, doing so has profound implications for application design, and not all applications are eligible/ready.

Recently, Cosmos DB GA'ed Per-Partition Automatic Failover (PPAF) which provides same high SLAs but in a single-region writes set up, opening up path to very high availability for many more applications.

This PR does two things:

  • Renames the APRL recommendation to "Enable Business Critical tier for highest availability". Business Critical tier was previously synonymous with multi-region writes but now covers scenarios where either of multi-region writes or PPAF features is enabled.
  • Updates the relevant KQL to include check for PPAF disabled

Overview/Summary

Related Issues/Work Items

Breaking Changes

  1. #N/A

As part of this pull request I have

  • Read the Contribution Guide and ensured this PR is compliant with the guide
  • Checked for duplicate Pull Requests
  • Associated it with relevant GitHub Issues or ADO Work Items (Internal Only)
  • Ensured my code/branch is up-to-date with the latest changes in the main branch
  • Ensured PR tests are passing
  • Performed testing and provided evidence (e.g. screenshot of output) for any changes associated to ARG queries
  • Updated relevant and associated documentation (e.g. Contribution Guide, Docs etc.)

Achieving 5 9's availability previously required enabling multi-region writes. Enabling it has implications for application design, and not all applications are eligible. Recently, Cosmos DB GA'ed Per-Partition Automatic Failover (PPAF) which provides same high SLAs in single-region writes set up opening up path to very high availability for many more applications.

This PR does two things:
- rename the APRL recommendation to Enable Business Critical BC tier, which covers scenarios where either feature is enabled
- update the relevant KQL to include check for PPAF disabled
@tomtronic Tomas Kovarik (tomtronic) changed the title [Cosmos] Rename HA recommendation and extend it to cover PPAF feature fix: [Cosmos] Rename HA recommendation and extend it to cover PPAF feature Oct 6, 2026
@tomtronic
Tomas Kovarik (tomtronic) marked this pull request as ready for review October 6, 2026 00:51
Copilot AI balanced review requested due to automatic review settings October 6, 2026 00:51
@microsoft-github-policy-service microsoft-github-policy-service Bot added the Bug 🐞 Something isn't working label Oct 6, 2026

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.

Copilot review overview

🔵 Needs a closer look

The PPAF property's availability and disabled-state representation in Azure Resource Graph need human validation.

Review effort: Balanced
Findings: None

What changed in this PR

Updates the Cosmos DB high-availability recommendation to cover both multi-region writes and Per-Partition Automatic Failover (PPAF).

Changes:

  • Renames the recommendation to Business Critical tier and explains both options.
  • Adds a PPAF-disabled condition to the detection query.
File Description
azure-resources/​DocumentDB/​databaseAccounts/​recommendations.yaml Updates the recommendation title and explanation.
azure-resources/​DocumentDB/​databaseAccounts/​kql/​9ce78192-74a0-104c-b5bb-9a443f941649.kql Filters for accounts with PPAF explicitly disabled.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

This branch has not been deployed

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

Labels

Bug 🐞 Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants