fix(falkordb): add missing special characters to sanitize method #1151
+17
−3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Add forward slash (
/), backslash (\), and pipe (|) to thesanitize()method to prevent RediSearch query syntax errors.Problem
When entity names contain certain special characters, RediSearch queries fail with syntax errors. The current
sanitize()method handles most special characters but misses three important ones:|\/For example, an entity name like
"Cruise / En route"would produce malformed queries.Solution
Added the three missing characters to
separator_mapinsanitize():Also updated the docstring with:
Research
RediSearch reserved characters that require escaping (from official docs):
,.<>{}[]"':;!@#$%^&*()-+=~?|(OR),-(negation),*and?(wildcards)\The existing code already handles most of these, this PR adds the missing ones.
Related
/, this PR is more complete)Test Plan
"Cruise / En route"→"Cruise En route""path\\to\\file"→"path to file""option1|option2"→"option1 option2"Built with OnSteroids