Azure / Azure/openapi-diff

Improve the error reported in the log for a NullReferenceException issue

Aperta
#362 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C#
Stelle
290
Fork
50
Merge medio
5g 13h
PR unite (30g)
5

Descrizione

The following error seems to be caused by spec issues, but it doesn't have enough information to trace the real issues.

```
Error: appendOadRuntimeErrors: {"type":"Raw","level":"Error","message":"Runtime Exception","time":"2025-08-06T20:28:16.228Z","groupName":"preview","extra":{"new":"https://github.com/stevemunk/azure-rest-api-specs/blob/ec36d0206de5a236b79e079611bcd25df47362cd/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/alias.json","old":"https://github.com/Azure/azure-rest-api-specs/blob/main/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/alias.json","details":"Command failed: dotnet /home/runner/work/azure-rest-api-specs/azure-rest-api-specs/node_modules/\\@azure/oad/dlls/OpenApiDiff.dll -o /tmp/oad-6bw2a3/old-resolved.json -n /tmp/oad-2X5zP2/new-resolved.json\nUnhandled exception. System.NullReferenceException: Object reference not set to an instance of an object.\n at AutoRest.Swagger.Model.ServiceDefinition.ReferenceTrackSchemas(ServiceDefinition service) in D:\\a\\_work\\1\\s\\openapi-diff\\src\\modeler\\AutoRest.Swagger\\Model\\ServiceDefinition.cs:line 509\n at AutoRest.Swagger.Model.ServiceDefinition.Compare(ComparisonContext`1 context, ServiceDefinition previousDefinition) in D:\\a\\_work\\1\\s\\openapi-diff\\src\\modeler\\AutoRest.Swagger\\Model\\ServiceDefinition.cs:line 321\n at AutoRest.Swagger.SwaggerModeler.Compare(String fileNameOld, String swaggerOld, String fileNameNew, String swaggerNew, Settings settings) in D:\\a\\_work\\1\\s\\openapi-diff\\src\\modeler\\AutoRest.Swagger\\SwaggerModeler.cs:line 34\n at OpenApiDiff.Program.Main(String[] args) in D:\\a\\_work\\1\\s\\openapi-diff"}}
```

Pipeline run:
https://github.com/Azure/azure-rest-api-specs/actions/runs/16787747592/job/47542471322?pr=36493

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia da ServiceDefinition.cs in corrispondenza di ReferenceTrackSchemas, alla riga 509, poi segui Compare alla riga 321 e SwaggerModeler.cs alla riga 34. Riproduci il problema usando il comando OpenApiDiff.dll e i file risolti vecchio/nuovo mostrati nei dettagli dell'errore. Il lavoro è completato quando il log riporta un contesto sufficiente per risalire al problema sottostante della specifica, invece di riportare solo la NullReferenceException.

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

Valutazione

Stack tecnologico
csharp
Ambito
cli
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.