Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix out-of-memory issue with nested objects with arrays with maxItems set #2536

Merged
merged 2 commits into from
Apr 1, 2019
Merged

Fix out-of-memory issue with nested objects with arrays with maxItems set #2536

merged 2 commits into from
Apr 1, 2019

Conversation

macjohnny
Copy link
Member

@macjohnny macjohnny commented Mar 28, 2019

fix out-of-memory issue with nested objects with arrays with maxItems set by limiting to max. 5 example items

PR checklist

  • Read the contribution guidelines.
  • Ran the shell script under ./bin/ to update Petstore sample so that CIs can verify the change. (For instance, only need to run ./bin/{LANG}-petstore.sh, ./bin/openapi3/{LANG}-petstore.sh if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates). Windows batch files can be found in .\bin\windows\.
  • Filed the PR against the correct branch: master, 3.4.x, 4.0.x. Default: master.
  • Copied the technical committee to review the pull request if your PR is targeting a particular programming language.

Description of the PR

fixes #2503

…axItems set by limiting to max. 5 example items
@macjohnny
Copy link
Member Author

macjohnny commented Mar 28, 2019

@macjohnny
Copy link
Member Author

macjohnny commented Mar 28, 2019

Note: I will updated the samples once the core team agrees to this change.

@jimschubert
Copy link
Member

I think this is a good approach. Is the OOME an indicator of a poorly-written or potentially problematic openapi document? That is, should we warn if we reset he nesting count to 5?

@macjohnny
Copy link
Member Author

I think a warning is not necessary, since as a user I don‘t expect my example to be filled to the max with maxItems array items

@macjohnny
Copy link
Member Author

Moreover, I don‘t think think this is a problem with the spec, since nesting is allowed and it could also happen with only one nesting level and maxItems=1000000

@jimschubert
Copy link
Member

Good points. Yeah I think this approach works, then.

@macjohnny
Copy link
Member Author

@jimschubert would you mind approving the PR then?

@jimschubert jimschubert merged commit ec42aca into OpenAPITools:master Apr 1, 2019
jimschubert added a commit that referenced this pull request Apr 2, 2019
* master: (133 commits)
  #2503: fix out-of-memory issue with nested objects with arrays with maxItems set by limiting to max. 5 example items (#2536)
  remove emitDefaultValue option (#2559)
  fix EmitDefaultValue default vallue with false (#2558)
  Added API Key auth to rust-server (#2459)
  remove initialCaps and replace with camelize (#2546)
  Add packageName configuration to maven (#2429)
  [Typescript AngularJS] fix Extra package prefix in api parameters operations (#2522)
  #1023 - [Scala] Use status family during response processing (#1024)
  Generate setters for readonly properties in server code (#1582)
  [JS] fix NPE for null string and improve Travis config file (#2553)
  [elm] Update ISO 8601 library (fixes missing time zone designator) (#2545)
  [csharp] update sample after #2528 (#2550)
  [JavaScript] fix index.js, ApiClient.js and test files generated to incorrect location (#2511)
  Aspnetcore nullable support (#2529)
  Csharp nullable support (#2528)
  [C++] [Qt5] Add enum support for client and server (#2339)
  Fixed typo in migration-from-swagger-codegen.md (#2548)
  [TypeScript Client] fix install Aurelia + fix use deprecated function (#2514)
  [KOTLIN] fix var name not correctly sanitized (#2537)
  Update swagger-parser to '2.0.11-OpenAPITools.org-1' (#2262)
  ...
@wing328 wing328 added this to the 4.0.0 milestone Apr 4, 2019
@wing328 wing328 changed the title #2503: fix out-of-memory issue with nested objects with arrays with maxItems set Fix out-of-memory issue with nested objects with arrays with maxItems set Apr 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] [JavaScript] java.lang.OutOfMemoryError on simple OpenAPI file
3 participants