Azure / Azure/apiops

[Question]T emporary loss of service when updating OpenAPI specification (removing an operation)

Aperta
#827 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C#
Stelle
448
Fork
247
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### 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

1. 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).

2. Modify only the OpenAPI specification (specification.yaml):
- Remove a single operation (endpoint).
- Do not change apiInformation.json, policies, products, or backend configuration.

3. Deploy the changes using the APIOps Publisher (same pipeline and configuration as previous deployments).

4. While the deployment is running, send requests to existing (unchanged) endpoints of the API.

5. Observe that during the deployment window, requests temporarily fail at the APIM Gateway with the following error:

GatewayError:
at forward-request

6. Once the APIOps deployment finishes, the API starts working correctly again without any further changes.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia riproducendo il deployment di APIOps Publisher con specification.yaml e apiInformation.json mentre richiedi un endpoint invariato. Esamina il comportamento dell’aggiornamento in-place e della revisione dell’API, quindi documenta se l’interruzione GatewayError è prevista e quali indicazioni supportate per il deployment zero-downtime si applicano.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
azure, openapi
Ambito
api, cloud, devops
Tipo di issue
Bug
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.