If you’re getting an error that reads “One or more scores can’t be converted into double” when using either the SORT or SORT_RO commands in Redis, it could be because you omitted the ALPHA modifier when trying to sort string values.
If you want to sort string values lexicographically, you need to use the ALPHA modifier when using the SORT or SORT_RO command.
Example of Error
Here’s an example of code that causes the error:
SORT cats
Result:
(error) ERR One or more scores can't be converted into double
Here, I am trying to sort a set called cats that contains the names of cats, but I am getting an error.
Here’s what the set contains:
SMEMBERS cats
Result:
1) "Meow" 2) "Scratch" 3) "Fluffy"
So each member is a string value containing the name of a cat.
Solution
As mentioned, if we want to sort string values lexicographically, we need to use the ALPHA modifier when using the SORT or SORT_RO command:
SORT cats ALPHA
Result:
1) "Fluffy" 2) "Meow" 3) "Scratch"
So, all we needed to do to fix the problem was add ALPHA to our code.
The same applies to the SORT_RO command, which is basically a read-only variant of SORT.