Runtime Exception - JSON integer is too large or small for an Int64
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
Beginnen Sie bei AutoRest.Swagger/PathLevelParameterConverter.cs in Zeile 48 und verfolgen Sie dann SwaggerParser.Parse sowie den im Bericht gezeigten OpenApiDiff-Befehl. Reproduzieren Sie den Fehler mit den verknüpften ConfidentialLedger-Spezifikationen. Die Aufgabe ist abgeschlossen, wenn der maximale Wert in parameters.CommitParameter ohne die Int64-Parsing-Ausnahme verarbeitet werden kann und der Vergleich abgeschlossen wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
I'm getting the follwing runtime exception when trying to run the tool against the following two files:
- https://github.com/Azure/azure-rest-api-specs/blob/4ee92e33cbdbec6685e3cfa125a9b80423cac04c/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/stable/2022-11-23/confidentialledger.json
- https://github.com/Azure/azure-rest-api-specs/blob/main/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/stable/2022-05-13/confidentialledger.json
Unhandled exception. Newtonsoft.Json.JsonReaderException: JSON integer 9223372036854776000 is too large or small for an Int64. Path 'parameters.CommitParameter.maximum', line 1, position 40197.
at Newtonsoft.Json.JsonTextReader.ParseNumber(ReadType readType)
at Newtonsoft.Json.JsonTextReader.ParseValue()
at Newtonsoft.Json.Linq.JContainer.ReadContentFrom(JsonReader r, JsonLoadSettings settings)
at Newtonsoft.Json.Linq.JContainer.ReadTokenFrom(JsonReader reader, JsonLoadSettings options)
at Newtonsoft.Json.Linq.JObject.Load(JsonReader reader, JsonLoadSettings settings)
at Newtonsoft.Json.Linq.JObject.Parse(String json, JsonLoadSettings settings)
at Newtonsoft.Json.Linq.JObject.Parse(String json)
at AutoRest.Swagger.JsonConverters.PathLevelParameterConverter..ctor(String json) in D:\a\1\s\openapi-diff\src\modeler\AutoRest.Swagger\PathLevelParameterConverter.cs:line 48
at AutoRest.Swagger.SwaggerParser.Parse(String swaggerDocument, String fileName) in D:\a\1\s\openapi-diff\src\modeler\AutoRest.Swagger\SwaggerParser.cs:line 22
at AutoRest.Swagger.SwaggerModeler.Compare(String fileNameOld, String swaggerOld, String fileNameNew, String swaggerNew, Settings settings) in D:\a\1\s\openapi-diff\src\modeler\AutoRest.Swagger\SwaggerModeler.cs:line 29
at OpenApiDiff.Program.Main(String[] args) in D:\a\1\s\openapi-diff\src\core\OpenApiDiff\Program.cs:line 37
Aborted
at ChildProcess.exithandler (node:child_process:389:12)
at ChildProcess.emit (node:events:513:28)
at maybeClose (node:internal/child_process:1091:16)
at Socket.<anonymous> (node:internal/child_process:449:11)
at Socket.emit (node:events:513:28)
at Pipe.<anonymous> (node:net:757:14) {
code: 134,
killed: false,
signal: null,
cmd: 'dotnet /home/apiccione/.nvm/versions/node/v18.6.0/lib/node_modules/@azure/oad/dlls/OpenApiDiff.dll -o /tmp/old-resolved.json -n /tmp/new-resolved.json',
stdout: '',
stderr: "Unhandled exception. Newtonsoft.Json.JsonReaderException: JSON integer 9223372036854776000 is too large or small for an Int64. Path 'parameters.CommitParameter.maximum', line 1, position 40197.\n" +
' at Newtonsoft.Json.JsonTextReader.ParseNumber(ReadType readType)\n' +
' at Newtonsoft.Json.JsonTextReader.ParseValue()\n' +
' at Newtonsoft.Json.Linq.JContainer.ReadContentFrom(JsonReader r, JsonLoadSettings settings)\n' +
' at Newtonsoft.Json.Linq.JContainer.ReadTokenFrom(JsonReader reader, JsonLoadSettings options)\n' +
' at Newtonsoft.Json.Linq.JObject.Load(JsonReader reader, JsonLoadSettings settings)\n' +
' at Newtonsoft.Json.Linq.JObject.Parse(String json, JsonLoadSettings settings)\n' +
' at Newtonsoft.Json.Linq.JObject.Parse(String json)\n' +
' at AutoRest.Swagger.JsonConverters.PathLevelParameterConverter..ctor(String json) in D:\\a\\1\\s\\openapi-diff\\src\\modeler\\AutoRest.Swagger\\PathLevelParameterConverter.cs:line 48\n' +
' at AutoRest.Swagger.SwaggerParser.Parse(String swaggerDocument, String fileName) in D:\\a\\1\\s\\openapi-diff\\src\\modeler\\AutoRest.Swagger\\SwaggerParser.cs:line 22\n' +
' at AutoRest.Swagger.SwaggerModeler.Compare(String fileNameOld, String swaggerOld, String fileNameNew, String swaggerNew, Settings settings) in D:\\a\\1\\s\\openapi-diff\\src\\modeler\\AutoRest.Swagger\\SwaggerModeler.cs:line 29\n' +
' at OpenApiDiff.Program.Main(String[] args) in D:\\a\\1\\s\\openapi-diff\\src\\core\\OpenApiDiff\\Program.cs:line 37\n' +
'Aborted\n'
}
This seems to originate from parsing the maximum int64 9223372036854775807 here, which for some reason gets converted to 9223372036854776000 when the tool runs. The value is the same for both specs.
Please also find more details about the error in the CI pipeline: https://github.com/Azure/azure-rest-api-specs/pull/21659/checks?check_run_id=9712102995.
- Vorherrschende Sprache
- C#
- Sterne
- 290
- Forks
- 50
- Ø Merge
- 7 Std. 8 Min.
- Gemergte PRs (30 T.)
- 11
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus Azure/openapi-diff
-
Crash if inherited property is structurally equal but not reference identicalEvtl. wieder frei @mikeharder hat das vor 153 Tagen übernommen, und es ist kein Pull Request offen. Offen
Azure/openapi-diff#482 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Crash if duplicate model names (across files) used in allOfEvtl. wieder frei @mikeharder hat das vor 154 Tagen übernommen, und es ist kein Pull Request offen. Offen
Azure/openapi-diff#479 · 2 Kommentare · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Remove dependency `autorest`Evtl. wieder frei @mikeharder hat das vor 216 Tagen übernommen, und es ist kein Pull Request offen. Offen
Azure/openapi-diff#456 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
Azure/openapi-diff#445 ·
Maintainer antworten meist innerhalb von 1 Tag
-
OpenAPI-diff should flag changes in the tags for an operationEvtl. wieder frei @mikeharder hat das vor 399 Tagen übernommen, und es ist kein Pull Request offen. Offen
Azure/openapi-diff#371 · 7 Kommentare · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in Azure/openapi-diff
Ähnliche Issues
-
[Doc Gap] Document new --enable-public-network-access breaking change for azurebackup vault createOffencopilot documentation
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
Maintainer antworten meist innerhalb von 1 Tag
-
area-dashboard
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag
-
0 - Backlog Bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
BrighterCommand/Brighter#4539 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area-networking
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
dotnet/aspnetcore#69671 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Ignored test: FileLocalDataSourceTests.retries_loading_fileEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offentest
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
NethermindEth/nethermind#14274 ·
Maintainer antworten meist innerhalb von 1 Tag