读书人

jedis 升格 2.0.0 to 2.1.0

发布时间: 2012-10-05 15:34:34 作者: rapoo

jedis 升级 2.0.0 to 2.1.0


今天发现jedis?2.0.0 在使用pipeline时,如果结果是null,会有如下异常

?

java.lang.NullPointerException
at java.lang.String.(String.java:515)
at redis.clients.util.SafeEncoder.encode(SafeEncoder.java:28)
at redis.clients.jedis.BuilderFactory$5.build(BuilderFactory.java:55)
at redis.clients.jedis.BuilderFactory$5.build(BuilderFactory.java:58)
at redis.clients.jedis.Response.get(Response.java:27)

?

看了下源码,Response.get 中没有对data为null的情况进行处理

?

?

key?member [member ...]

?

2.1.0是标准化了

如果换成2.1.0后,不重编译,自然就NoSuchMethodError

?

相关jar重编译后

原来的

jedis.sadd("foo", "bar");

会变成

jedis.sadd("foo", new String[]{"bar"});

反编译下jar就能看到了

?

?

没在官方找到类似chang log的东西,有人知道在什么地方吗?

?

自己比较了一下,主要有如下变化(不完整)

?

和sadd类似的有 srem ?hdel ? zrem

Long zadd(final String key, final Map<Double, String> scoreMembers)

?

Long rpush(final String key, final String string)

TO

Long rpush(final String key, final String... strings)

类似的有 lpush

?

?

zrange(final String key, final int start, final int end)

TO

zrange(final String key, final long start, final long end)

类似的有 ?zrevrange ? zrangeWithScores ?zrevrangeWithScores ?zremrangeByRank

?

和ByScore相关的,原来的 min max score 参数都是double类型

2.1.0中 每个函数都增加了一个 ?min max score 都是string类型的版本

来处理score为如下情况的时候

-inf +inf?

(1 (2

?

?

增加内容

增加了在redis 2.6 中和Lua script相关的接口

List<String> configGet(final String pattern)

String configSet(final String parameter, final String value)

List<Slowlog> slowlogGet(long entries)

读书人网 >开源软件

热点推荐