Azure / Azure/azure-functions-openapi-extension

Visitors - no shortcut for recursive references causing stack overflow

Open
#656 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
C#
Stars
388
Forks
202
PR merge metrics
No merged PRs in 30d

Description

**Describe the issue**
When visitors are traversing a model to generate schema, it looks like any form of recursion causes a stack overflow. This occurs when the recursion is across models.

A => A - handled.

A => B => A - not handled
A => B => {...} => A - not handled.

**To Reproduce**
Steps to reproduce the behavior:
Create a standard API with open api attributes.

Create a model of type A that has a property of Type B.
Create a model of type B that has a property of Type C.
Create a model of type C that has a property of Type A.

Adding one extra level of indirection, as that would handle both the broken cases brought up above.

**Expected behavior**
Recursion for a visitor should short circuit and substitute a reference.

As far as I can tell, this issue is split across OpenApiSchemaAcceptor, and possibly the TypeVisitor.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.