-
Notifications
You must be signed in to change notification settings - Fork 16
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
Request for example of commands for all RESP3 types #15
Comments
@mgravell for simple sanity checks, I recommend the built-in |
That's helpful. Anything that does string/array streaming @itamarhaber ? |
Nope - although these are in the spec, they were never implemented in Redis to this point. |
That's brilliant, thanks. Possibly worth a mention of |
I'm so dumb I should be put in a home. Use Lua Luke:
Ref: https://redis.io/docs/manual/programmability/lua-api/#lua-to-resp3-type-conversion |
Overall changes: - [x] introduce `Resp2Type` and `Resp3Type` shims (`Resp2Type` has reduced types); existing code using `[Obsolete] Type` uses `Resp2Type` for minimal code impact - [x] mark existing `Type` as `[Obsolete]`, and proxy to `Resp2Type` for compat - [x] deal with null handling differences - [x] deal with `Boolean`, which works very differently (`t`/`f` instead of `1`/`0`) - [x] deal with `[+|-]{inf|nan}` when parsing doubles (explicitly called out in the RESP3 spec) - [x] parse new tokens - [x] `HELLO` handshake - [x] core message and result handling - [x] validation and fallback - [x] prove all return types (see: redis/redis-specifications#15) - [x] <strike>streamed RESP3</strike> omitting; not implemented by server; can revisit - [x] deal with pub/sub differences - [x] check routing of publish etc - [x] check re-wire of subscription if failed - [x] check receive notifications - [x] connection management (i.e. not to spin up in resp3) - [x] connection fallback spinup (i.e. if we were trying resp3 but failed) - [x] other - [x] [undocumented RESP3 delta](redis/redis-doc#2513) - [x] run core tests in both RESP2 and RESP3 - [x] compensate for tests that expect separate subscription connections Co-authored-by: Nick Craver <[email protected]> Co-authored-by: Nick Craver <[email protected]>
I'm currently implementing RESP3 in a library; I'm paranoid - I don't trust any code that I haven't seen working; it would really help if there were well-known ways of reproducing all of the expected types using vanilla redis; for example:
latency doctor
hgetall
smembers
but: I have not yet managed to confirm:
sismember
, returns integer)incrbyfloat
, returns bulk string)Are there inbuilt APIs that expose these remaining gaps?
The text was updated successfully, but these errors were encountered: