[BUG] A large negative number(e.g. -LONG_MAX) in HRANDFIELD/ZRANDMEMBER can easily cause Valkey to crash.
#844 geöffnet am 30.07.2024
Repository-Metriken
- Stars
- (25.779 Sterne)
- PR-Merge-Metriken
- (Durchschn. Merge 17T 7h) (74 gemergte PRs in 30 T)
Beschreibung
Describe the bug
When using the HRANDFIELD or ZRANDMEMBER commands, if an extremely negative value(e.g. -LONG_MAX) is provided, the memory will continue to rise and eventually cause Redis to crash.
To reproduce
HRANDFIELD hash -9223372036854775807
Expected behavior
IMHO, it is more reasonable to set a limit on count according to the memory limit or the actual size of the hash table to prevent Redis from crashing. This can prevent crashes caused by careless and incorrect use. If a user really needs to sample a lot of elements that allow duplicates, he can achieve the same purpose by calling the command multiple times.