redis key_formatter should handle cases where client keys contain hash tag
#30,905 opened on Nov 16, 2023
Repository metrics
- Stars
- (27,997 stars)
- PR merge metrics
- (Avg merge 8d) (378 merged PRs in 30d)
Description
Title: redis key_formatter should handle cases where client keys contain hash tag
Description:
Redis supports hash tag feature which can be used to to take a curly braces wrapped substring for key hash.
Consider a scenario where user specify a key_formatter that uses hash tag, e.g. prefix-{%KEY%}, and the client key contains hash tag as well, e.g. foo-{bar}. The formatted key becomes prefix-{foo-{bar}} and foo-{bar will be used for hash instead ofbar intended by client.
The proposed change is to add an option for key_formatter to prefer client key's hash tag if present. If the feature is enabled and the first pair of curly braces in key_formatter wraps %KEY% which also contains hash tag, the key_formatter will be stripped off of the pair of curly braces. In the above example, the formatted key becomes prefix-foo-{bar}.
[optional Relevant Links:] redis hash tag