Skip to content

core: add configurable max stack size to interpreter#1892

Merged
brharrington merged 3 commits intoNetflix:mainfrom
brharrington:stack-limit
Apr 4, 2026
Merged

core: add configurable max stack size to interpreter#1892
brharrington merged 3 commits intoNetflix:mainfrom
brharrington:stack-limit

Conversation

@brharrington
Copy link
Copy Markdown
Contributor

Prevent exponential stack growth from expressions that use operations like :each and :fcall to repeatedly double the stack. The limit also applies to list literals to prevent unbounded memory growth via large (,...) expressions.

The default limit of 1024 was validated against 1.7M real-world expressions with zero new failures (real-world max is between 16 and 32).

Prevent exponential stack growth from expressions that use operations
like :each and :fcall to repeatedly double the stack. The limit also
applies to list literals to prevent unbounded memory growth via large
(,...) expressions.

The default limit of 1024 was validated against 1.7M real-world
expressions with zero new failures (real-world max is between 16 and
32).
@brharrington brharrington added this to the 1.9.0 milestone Apr 3, 2026
@brharrington brharrington merged commit 7198741 into Netflix:main Apr 4, 2026
5 checks passed
@brharrington brharrington deleted the stack-limit branch April 4, 2026 00:36
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.

1 participant