当我触发redis-py的bgsave()
命令时,返回值为False
,但是我非常确定执行成功,因为我已经使用lastsave()
进行了检查。
但是,如果我使用save()
,成功执行后的返回值将是True
。
谁能解释False
代表bgsave()
吗?不确定是否与在后台执行的bgsave()
有任何关系。
最佳答案
感谢Pavel Anossov,在阅读client.py的代码之后,我发现来自2个命令(BGSAVE和BGREWRITEAOF)的响应没有从字节转换为str,这在Python 3中引起了问题。
要解决此问题,只需将lambda r: r ==
中的这两个命令的lambda r: nativestr(r) ==
更改为RESPONSE_CALLBACKS
即可。
关于python - 为什么成功执行后redis-py的bgsave()命令返回False?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14417846/