redict/tests/unit
Tyson Andre f11f26cc53
Add a ZMSCORE command returning an array of scores. (#7593)
Syntax: `ZMSCORE KEY MEMBER [MEMBER ...]`

This is an extension of #2359
amended by Tyson Andre to work with the changed unstable API,
add more tests, and consistently return an array.

- It seemed as if it would be more likely to get reviewed
  after updating the implementation.

Currently, multi commands or lua scripting to call zscore multiple times
would almost definitely be less efficient than a native ZMSCORE
for the following reasons:

- Need to fetch the set from the string every time instead of reusing the C
  pointer.
- Using pipelining or multi-commands would result in more bytes sent by
  the client for the repeated `ZMSCORE KEY` sections.
- Need to specially encode the data and decode it from the client
  for lua-based solutions.
- The fastest solution I've seen for large sets(thousands or millions)
  involves lua and a variadic ZADD, then a ZINTERSECT, then a ZRANGE 0 -1,
  then UNLINK of a temporary set (or lua). This is still inefficient.

Co-authored-by: Tyson Andre <tysonandre775@hotmail.com>
2020-08-04 17:49:33 +03:00
..
moduleapi module hook for master link up missing on successful psync (#7584) 2020-07-31 13:14:29 +03:00
type Add a ZMSCORE command returning an array of scores. (#7593) 2020-08-04 17:49:33 +03:00
acl.tcl Fix command help for unexpected options (#7476) 2020-07-15 12:38:22 +03:00
aofrw.tcl AOF: run tests with preamble off when it makes sense. 2018-03-25 13:03:38 +02:00
auth.tcl ACL: AUTH + no default user password raises an error. 2019-01-17 18:30:23 +01:00
bitfield.tcl Fix BITFIELD_RO test. 2020-03-23 12:02:12 +01:00
bitops.tcl Regression test for #3282. 2016-06-15 11:49:49 +02:00
dump.tcl RESTORE ABSTTL won't store expired keys into the db (#7472) 2020-07-10 10:02:37 +03:00
expire.tcl AOF: append origin SET if no expire option 2020-06-03 17:55:18 +08:00
geo.tcl Revert "Geo: output 10 chars of geohash, not 11." 2019-12-18 12:54:46 +01:00
hyperloglog.tcl HyperLogLog: speedup fuzz test. 2019-03-15 17:13:19 +01:00
introspection-2.tcl fix #5024 - commandstats for multi-exec were logged as EXEC. 2018-09-30 12:43:11 +03:00
introspection.tcl TLS: Session caching configuration support. (#7420) 2020-07-10 11:33:47 +03:00
keyspace.tcl Test: MOVE expire test improved. 2015-09-14 12:35:55 +02:00
latency-monitor.tcl Fix command help for unexpected options (#7476) 2020-07-15 12:38:22 +03:00
lazyfree.tcl Test: basic lazyfree unit test. 2015-10-09 09:47:17 +02:00
limits.tcl TLS: Connections refactoring and TLS support. 2019-10-07 21:06:13 +03:00
maxmemory.tcl make replication tests more stable on slow machines 2019-05-05 08:25:01 +03:00
memefficiency.tcl fix a rare active defrag edge case bug leading to stagnation 2020-05-20 16:04:42 +03:00
multi.tcl EXEC always fails with EXECABORT and multi-state is cleared 2020-06-23 12:01:33 +03:00
obuf-limits.tcl Fix test false positive introduced by threaded I/O. 2019-05-13 17:27:10 +02:00
other.tcl tests: each test client work on a distinct port range 2020-05-26 11:17:08 +03:00
pendingquerybuf.tcl Slave removal: remove slave from top-level tests descriptions. 2018-09-11 15:32:28 +02:00
printver.tcl Print version info before running the test 2011-05-20 11:44:54 +02:00
protocol.tcl TLS: Connections refactoring and TLS support. 2019-10-07 21:06:13 +03:00
pubsub.tcl pubsub: Return integers for NUMSUB, not strings 2014-08-08 11:19:37 +02:00
quit.tcl Add tests for OK on QUIT 2010-10-15 12:54:53 +02:00
scan.tcl Implement SCAN cursor [TYPE type] modifier suggested in issue #6107. 2019-05-22 16:39:04 +01:00
scripting.tcl XREAD and XREADGROUP should not be allowed from scripts when BLOCK option is being used 2020-03-26 15:46:31 +02:00
slowlog.tcl Test: fix slowlog test false positive. 2019-05-14 16:55:52 +02:00
sort.tcl Config: Add quicklist, remove old list options 2015-01-02 11:16:10 -05:00
tls.tcl Add optional tls verification (#7502) 2020-07-28 10:45:21 +03:00
tracking.tcl Regression test for #7249. 2020-05-14 11:27:31 +02:00
wait.tcl TLS: Connections refactoring and TLS support. 2019-10-07 21:06:13 +03:00