Azure / Azure/openapi-diff

Improve the error reported in the log for a NullReferenceException issue

Ouverte
#362 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
C#
Étoiles
290
Forks
50
Merge moyen
5 j 13 h
PR mergées (30 j)
5

Description

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

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start with ServiceDefinition.cs at ReferenceTrackSchemas line 509, then follow Compare at line 321 and SwaggerModeler.cs line 34. Reproduce the failure using the OpenApiDiff.dll command and the old/new resolved files shown in the error details. Done means the log reports enough context to trace the underlying specification problem instead of only the NullReferenceException.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
csharp
Domaine
cli
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.