[Question]T emporary loss of service when updating OpenAPI specification (removing an operation)
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
Research direction
Start by reproducing the APIOps Publisher deployment with specification.yaml and apiInformation.json while requesting an unchanged endpoint. Review the in-place update and API revision behavior, then document whether the GatewayError interruption is expected and what supported zero-downtime deployment guidance applies.
Written by the indexing model from the issue text.
Description
Release version
v6.0.2
Question Details
We are experiencing a temporary loss of service when deploying an update to an existing API using APIOps, even for a minimal OpenAPI change.
When we update specification.yaml (for example, removing a single operation) and deploy using APIOps, the API becomes unavailable for a short period during the deployment, although it recovers once the deployment finishes.
During this window, requests fail at the APIM Gateway with the following error:
GatewayError:
at forward-request
This behavior is consistently reproducible in our environment.
Is this temporary gateway failure during OpenAPI updates an expected behavior when using APIOps?
If so, is there a recommended zero-downtime approach for updating OpenAPI specifications with APIOps (for example, using API revisions)?
Thanks in advance for your help.
Expected behavior
For an API deployed on APIM Enterprise SKU, we would expect that:
Updating an OpenAPI specification (even removing an operation)
Does not cause a temporary service interruption
Actual behavior
During the APIOps deployment:
Requests to the API fail temporarily
APIM Gateway returns:
GatewayError:
at forward-request
Once the deployment completes, the API works correctly again
Reproduction Steps
-
Have an existing API deployed in Azure API Management (Enterprise SKU) using APIOps.
- The API is already serving traffic correctly.
- Backend configuration (serviceUrl) is defined in apiInformation.json.
- No API revisions are used (in-place update).
-
Modify only the OpenAPI specification (specification.yaml):
- Remove a single operation (endpoint).
- Do not change apiInformation.json, policies, products, or backend configuration.
-
Deploy the changes using the APIOps Publisher (same pipeline and configuration as previous deployments).
-
While the deployment is running, send requests to existing (unchanged) endpoints of the API.
-
Observe that during the deployment window, requests temporarily fail at the APIM Gateway with the following error:
GatewayError:
at forward-request -
Once the APIOps deployment finishes, the API starts working correctly again without any further changes.
- Dominant language
- C#
- Stars
- 448
- Forks
- 247
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Azure/apiops
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Similar issues
-
type/automation type/tech-debt
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
t/bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
ci-failure-cause test-failure
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
area:auth FE mvp P3
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
klasolsson81/jobbliggaren#1788 ·