问题描述
我正在尝试为 Redis 客户端定义自己的动态命令,但在初始化时出现奇怪的错误。
我对 mset 使用动态命令的原因是我需要继续支持返回以前版本中的 m = df.groupby('Identity')['periods'].transform('max')
df.loc[(m >=2) & (m <=5),'Label'] = 'label 1'
print(df)
Identity periods one two three Label
0 one 1 -0.462407 0.022811 -0.277357 label 1
1 one 1 -0.617588 1.667191 -0.370436 label 1
2 one 2 -0.604699 0.635473 -0.556088 label 1
3 one 2 -0.852943 1.087415 -0.784377 label 1
4 two 3 0.421453 2.390097 0.176333 label 1
5 two 3 -0.447321 -1.215280 -0.187156 label 1
6 two 4 0.398953 -0.334095 -1.194132 label 1
7 two 4 -0.324348 -0.842357 0.970825 label 1
。
我正在从旧的生菜客户端依赖项 biz.paluch.redis 升级到 io.lettuce
io.lettuce.core.dynamic.CommandMethodSyntaxException:命令 MSET
需要至少 2 个参数,但方法声明 1 个参数。
违规方法:public abstract rx.Observable
我已经定义了我的命令接口
rx.Observable
并在客户端设置
public interface MyCommands extends Commands {
Observable<byte[]> get(String key);
Observable<byte[]> mget(String... keys);
Observable<String> set(String key,byte[] value,SetArgs args);
Observable<String> mset(Map<String,byte[]> values);// offending command
Observable<String> hmset(String key,Map<String,byte[]> values);
Observable<Long> del(String... keys);
Observable<Boolean> expire(final String key,final int seconds);
Observable<Map<String,byte[]>> hgetAll(final String key);
Observable<Long> ttl(final String key);
Observable<Long> exists(final String key);
Observable<Long> rpush(final String key,final byte[][] strings);
Observable<Long> rpushx(final String key,final byte[] string);
Observable<Long> llen(final String key);
}
我不确定是什么原因造成的,看起来 RedisReactiveCommands 与相同的方法签名完全相同。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)