You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit ff66cb8
Browse filesBrowse the repository at this point in the historyBrowse files
Make the PPL parse/rex regex match bound an absolute, configurable limit
Change the parse/rex regex work bound from a per-input-length factor to an
absolute cap on the number of characters a single match may read, and expose it
as a dynamic cluster setting.
- LimitedCharSequence now aborts once total charAt reads exceed an absolute
matchLimit, instead of limitFactor * input length. An absolute cap cannot be
evaded by shrinking the input, and keeps every single match bounded to well
under a millisecond regardless of input size.
- Add the plugins.ppl.regex.match.limit setting (NodeScope, Dynamic) with a
default of 100000, matching the match_limit default used by Splunk rex and
PCRE2. RegexCommonUtils holds the value in a volatile field that the OpenSearch
settings layer seeds on registration and updates on change; non-positive values
are ignored so a misconfiguration cannot disable the guard.
Add unit tests for the absolute-cap behavior, the configurable limit and its
non-positive guard, and the setting registration/propagation.
Signed-off-by: Jialiang Liang <jiallian@amazon.com>
0 commit comments