-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Incorrect Return Type from Context::call()
#234
Comments
This is fixed by pull request #93. There seems to be some hesitation by maintainers to implement the fix. Until then, here is a workaround that can be applied to the output of /// Remap `Context::call()` results to convert `SimpleString` into `BulkString`.
/// All other types are left alone.
pub fn fix_call_reply(result: RedisValue) -> RedisValue {
match result {
RedisValue::SimpleString(v) => RedisValue::BulkString(v),
RedisValue::Array(a) => {
RedisValue::Array(a.into_iter().map(|v| fix_call_reply(v)).collect())
}
v @ _ => v,
}
} |
Related #200 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The following Redis Module command simply wraps the Redis "GET" command and returns the value of the simple string key with the name "key". It contains a bug for some string values.
Root cause is that
Context::call()
always returns strings asRedisValue::SimpleString
. But strings containing \r\n should beRedisValue::BulkString
.The text was updated successfully, but these errors were encountered: