-
Notifications
You must be signed in to change notification settings - Fork 3.9k
BinaryJedisCommands, ScriptingCommands, BinaryScriptingCommands #618
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
Conversation
|
@phufool Hello! Btw, I've requested for pull about "removing BasicCommand from JedisCluster", #617 . Please review #617 , and when you can agree, please remove BasicCommand from BinaryJedisCluster. Thanks again! |
|
@phufool It's strange that Jedis sends all eval parameters to byte array, so when you really make it right it should work well. I'm adding some lines to current unit test for simply run with binary, and it seems to no problem. |
|
@phufool Maybe I found it. Below is Protocol class. You can find that we would be fine with "byte array made by string version of integer". For example, below is BinaryJedis class. You can see that keyCount is not directly converted to byte array. I think it leads confusing, so "commands with having byte array parameter for primitive type" could be discussed to deprecated, and finally removed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to http://redis.io/commands/blpop, arg is the key.
So you should call runBinary with arg.
Sorry for confused naming. I think arg should be changed to key.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll fix this so it passes arg
- removed BasicCommands
|
@phufool Good job with fixing these! Thanks! |
- Removed test case using deprecated ping method
|
Hey HeartSaVioR, |
|
@phufool Yes, it's working. |
|
@HeartSaVioR @phufool seems like this PR will definitely break backward compatibility. Do you agree to schedule it for 3.0? |
|
@marcosnils Surely yes. |
|
@marcosnils Yes that sounds good! |
|
@phufool @marcosnils |
|
@HeartSaVioR perfect. |
|
@marcosnils @phufool It's ready to serve at #671. |
|
Awesome! Looking forward to it! |
This pull request has the ScriptingCommands changes I had for the other pull request. I also included the implementations I made for BinaryScriptingCommands and BinaryJedisCommands for cluster. I also moved the BasicCommands from JedisCluster to BinaryJedisCluster.
An issue I found is the binary scripting command eval(final byte[] script, final byte[] keyCount, final byte[]... params). It returns the exception "Lua redis() command arguments must be strings or integers", even though the keyCount is a valid byte array.