redis / redis

Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps.
http://redis.io
Other
65.67k stars 23.6k forks source link

[NEW] Enhancing Clarity: Indicating Non-Existence of Members in ZSET Queries #13350

Open acearth opened 3 weeks ago

acearth commented 3 weeks ago

The problem/use-case that the feature addresses

I am currently utilizing Redis's GEO capabilities to handle location-based service (LBS) requests. I've encountered an issue with the GEORADIUSBYMEMBER command when querying non-existing members.

Issue Description:

When executing the command with a non-existing member, such as:

GEORADIUSBYMEMBER AirportGeo PKG222 300 KM WITHDIST

Redis returns the following error message:

(error) ERR could not decode requested zset member

This message suggests a decoding error, which can be misleading. It does not clearly indicate that the issue is due to the member not existing in the dataset.

Suggested Improvement:

It would be more helpful for troubleshooting and user experience if the error message directly stated that the member does not exist, rather than indicating a decoding error. An example of a more informative error message could be:

(error) ERR member 'PKG222' does not exist

This change would make it easier to understand the nature of the error at a glance, especially for users who are integrating Redis into larger systems where clarity is crucial.

Conclusion:

I believe adjusting the error messaging to be more descriptive regarding the actual problem (i.e., non-existing GEO members) could enhance the usability and developer experience of Redis.

Thank you for considering this improvement. I am looking forward to your thoughts and any potential updates on this matter.

I hope the Redis error could be more clear to declare the member is not existing, rather than decode error.

Additional information

Redis server version: 7.0.11

sundb commented 1 week ago

@acearth it seems reasonable, do you want to make a PR for it?