Commit Graph

315 Commits

Author SHA1 Message Date
Vladimir Mihailenco 6ff343b69f
Merge pull request #932 from theodesp/master
Add Client Unblock
2018-12-15 10:01:56 +02:00
Theo b5aefa2f6a ClientUnblock + ClientUnblockWithError 2018-12-14 14:46:15 +00:00
Theo c6bf37c653 Add Client Unblock 2018-12-11 20:26:48 +00:00
Roman Volosatovs c9555c4277
xgroup: Add XGroupCreateMkStream 2018-12-11 15:52:46 +01:00
Vladimir Mihailenco 11cf9400d5 Consistent naming 2018-12-11 13:17:41 +02:00
Theo 2672a0fbf2 Add Client Id 2018-12-11 10:43:54 +00:00
Vladimir Mihailenco 4d5a8b91ad Fix tests 2018-11-21 11:16:25 +02:00
Noah Hilverling 3a019aa681 Add support for XDel 2018-11-13 13:23:59 +01:00
Vladimir Mihailenco 58f22c56fd Change ZWithKey 2018-11-03 12:07:25 +02:00
Roman Volosatovs 8527f5907e
Implement BZPop{Min,Max} 2018-11-02 18:07:01 +01:00
Vladimir Mihailenco 40dbb03d62 Set cmd timeout when Block >= 0 2018-09-13 09:28:01 +03:00
Rémy-Christophe Schermesser f3bba01df2 Add ZPopMin and ZPopMax (#853)
* Add ZPopMin and ZPopMax
2018-09-03 11:45:32 +03:00
Kassian Sun 34916092ba Add streams group related commands 2018-08-02 15:24:53 +03:00
Tianyi Lin bbcb2b7988 Supports new style syntax of client kill command 2018-07-23 23:00:01 +08:00
Vladimir Mihailenco ce9cfe9417 Add MemoryUsage 2018-07-22 09:46:29 +03:00
Vladimir Mihailenco b92dacbfa7 Conn timeout should be higher than read timeout 2018-07-22 08:49:48 +03:00
Vladimir Mihailenco 1932888b44 Support XREAD BLOCK 0 2018-07-18 12:08:43 +03:00
nicktylah 39bdfc3fa8 Add basic redis streams support 2018-06-23 16:44:12 +03:00
Vladimir Mihailenco 5c742fff78 cluster: cleanup tests 2018-05-21 16:17:57 +03:00
Vladimir Mihailenco 0c76bc80b7 Support []string slices in commands that accept multiple values 2018-03-08 14:30:27 +02:00
Evan Goldschmidt 7acec74c59 Script: Fix `Exists` to use hash instead of source (#726)
`SCRIPT EXISTS` accepts a hash, not the raw source: https://redis.io/commands/script-exists
2018-03-05 11:03:03 +02:00
janaurka d0a2b8bdf3 Impement Config Rewrite command (#722)
This commit adds support for config rewrite as documented in
https://redis.io/commands/config-rewrite .
2018-03-01 10:37:51 +02:00
Vladimir Mihailenco 56dea1f39a Fix proto.RedisError in slices 2018-02-22 14:24:27 +02:00
Huan Du daab7c60d0 add new command Touch and SwapDB 2018-02-15 10:06:03 +02:00
Vladimir Mihailenco e456ee7148 Add SortStore and fix Sort signature 2018-02-13 16:08:11 +02:00
Vladimir Mihailenco 624096af5e Mention redis.Nil 2017-12-27 13:29:46 +02:00
Crimson b2e8f5832a Add godoc commentary to SMembers and SMembersMap 2017-11-19 18:00:51 +01:00
Crimson 7aa0130b2e Add SMembersMap function 2017-11-19 18:00:51 +01:00
Vladimir Mihailenco 742a58164c Add test for receive big message payload 2017-09-30 09:21:59 +03:00
Vladimir Mihailenco 7cb146a31b Increase read timeout for blocking commands and don't retry such commands 2017-09-29 16:12:43 +03:00
Vladimir Mihailenco f9307ab2fe Add TxPipeline to Cmdable 2017-09-25 11:48:44 +03:00
Vladimir Mihailenco 8ff417ca18 Fix flaky tests 2017-08-15 10:49:45 +03:00
Vladimir Mihailenco a9364f117c Add ZLexCount 2017-08-15 09:49:23 +03:00
Vladimir Mihailenco cf6c6dca84 Add Geo commands read-only variants 2017-07-19 15:32:50 +03:00
Vladimir Mihailenco f1ed2ad288 Add FlushDBAsync and FlushAllAsync 2017-06-17 12:53:16 +03:00
Vladimir Mihailenco 4a3a300665 Add Options.OnConnect 2017-05-26 14:56:18 +03:00
Vladimir Mihailenco 7e8890b644 Embed Cmdable into StatefulCmdable 2017-05-25 13:38:04 +03:00
Felipe Cavalcanti eeb4d09198 rename Pipelineable to Pipeliner 2017-05-02 12:00:53 -03:00
Felipe Cavalcanti 6fca4d5ad0 pipeline now has its own interface "Pipelineable" 2017-05-01 12:42:58 -03:00
Vladimir Mihailenco 14f25982cb Remove manual strconv 2017-03-24 12:48:32 +02:00
Vladimir Mihailenco bb270e3277 Merge branch 'v5' 2017-03-04 11:02:50 +02:00
Giovanni T. Parra d9f1dc2386 Mention SETEX in the documentation.
To help people looking for it specifically.
2017-02-24 22:01:11 -03:00
Ichinose Shogo b8fb4a1150 the timeout of WAIT command is in milliseconds. 2017-02-24 12:02:48 +02:00
Ichinose Shogo 892fb8d573 the timeout of WAIT command is in milliseconds. 2017-02-24 18:03:21 +09:00
Vladimir Mihailenco 8040d63c4f Remove gopkg.in 2017-02-19 09:49:21 +02:00
Vladimir Mihailenco d95ce53b0d Replace Exists with ExistsMulti. 2017-02-19 09:49:21 +02:00
Vladimir Mihailenco 56ddaf1199 Fix HMSet to accept interface{} value. 2017-02-19 09:49:21 +02:00
Nate Bosscher 6b8c6b3fe9 Added implementation for WAIT command
Reference: https://redis.io/commands/wait
2017-02-18 11:42:06 +02:00
Eyal Post 7c0cf90fb8 Support for multi keys in Exists 2017-02-10 12:15:25 +02:00
Eyal Post 4cbe497190 ObjectRefCount and ObjectEncoding accept one key 2017-02-10 00:32:52 +02:00
Vladimir Mihailenco 3b87351e3f Merge pull request #480 from go-redis/fix/object-idle-time
ObjectIdleTime accepts one key.
2017-01-26 16:15:58 +02:00
Vladimir Mihailenco 3fa2fb8dc0 ObjectIdleTime accepts one key. 2017-01-26 15:59:49 +02:00
Vladimir Mihailenco 63bac70a19 Add ZRemRangeByLex. 2017-01-26 15:53:58 +02:00
Vladimir Mihailenco 10c56cede3 Remove Scanner in favor of ScanCmd. 2017-01-03 12:44:06 +02:00
Vladimir Mihailenco 0f05d8df9d Add unlink command. 2016-12-22 13:42:05 +02:00
Back Yu ce1ddaa30c Update commands.go
Let HSet and HSetNX can use value as interface{} .
2016-12-21 01:03:12 +08:00
Vladimir Mihailenco 34122bffa8 Check that clients implement scripter interface. 2016-12-14 12:12:50 +02:00
Vladimir Mihailenco 82f21639bf Fix WrapProcess for Ring and Cluster. Add better example. 2016-11-30 13:00:53 +02:00
Vladimir Mihailenco 80cf5d1652 Merge pull request #409 from bpiddubnyi/bugfix/setxx-zero-ex
Fix "invalid expire time in set" for SetXX with expiration = 0
2016-10-24 12:52:32 +03:00
Borys Piddubnyi 50f1aff778 Fix "invalid expire time in set" for SetXX with expiration = 0 2016-10-21 15:40:53 +03:00
Vladimir Mihailenco dcdf129dd5 Add TimeCmd. 2016-10-14 14:39:02 +03:00
Vladimir Mihailenco 2c5b239ecb Remove internal errors package that clashes with std lib. 2016-10-09 11:44:31 +00:00
Vladimir Mihailenco f5245efa73 Prepare v5 release. 2016-10-09 10:56:53 +00:00
Vladimir Mihailenco 0b706418d9 Add Pipeline to Cmdable. 2016-09-27 09:29:21 +00:00
Roger Clotet 39333495f9 Remove unexported functions from Cmdable interface 2016-09-14 12:47:46 +02:00
Vladimir Mihailenco 73b28d0372 Fix Cmdable interface. 2016-09-14 10:01:56 +00:00
Vladimir Mihailenco 235dc49d5f Rename GeoPosition to GeoPos for consistency with Redis Server. Simplify code where possible. 2016-08-22 09:39:22 +00:00
Sergey Shcherbina ac1c5e46f9 support geopos command 2016-08-22 02:32:06 +05:00
Jamie Markle 5760a88db3 add WrapProcess 2016-08-15 15:22:50 -04:00
Vladimir Mihailenco ff8419f643 Rename Commander to Cmdable to match internal name. 2016-07-21 13:24:58 +00:00
Vladimir Mihailenco 46240a2089 Merge pull request #342 from yzprofile/v4
Feature: Export cmdable as an interface
2016-07-21 16:20:12 +03:00
Vladimir Mihailenco 4210c090b1 Move Publish channel to cmdable. Remove method that was deprecated in v3. 2016-07-21 13:04:40 +00:00
yzprofile dcdf3fc9c3 Feature: Export cmdable as an interface 2016-07-21 13:50:28 +08:00
Vladimir Mihailenco 261cf7ae70 Fix Del command case. 2016-07-08 09:30:38 +00:00
Dimitrij Denissenko 7d856c5595 Make proto/parser an internal package 2016-07-02 13:52:10 +01:00
Dimitrij Denissenko 1c4c05e970 Ensure to use pointer methods where appropriate. Tidy up godoc. 2016-07-01 13:25:28 +01:00
Vladimir Mihailenco 4761c24218 Add ForEachMaster API. 2016-06-17 12:09:38 +00:00
Vladimir Mihailenco b1f6610fc6 Support more interface values. 2016-06-14 10:22:16 +00:00
Mattias Lundell cd582ed576 add support for SPOP with a count argument (available in REDIS 3.2) 2016-06-10 12:58:04 +00:00
Vladimir Mihailenco ac162eb843 Move Select to stateful commands and make it available only via Pipeline and Tx. 2016-06-05 09:45:39 +00:00
Joris Minjat 487feebef1 Add latency based routing to Redis Cluster client. 2016-05-23 12:49:55 +03:00
Vladimir Mihailenco 9cbb0c42df Change HGetAll and HMSet to return/accept map[string]string. 2016-05-02 14:52:00 +03:00
Vladimir Mihailenco 38be24b025 Scan: swap return values and change cursor type. 2016-04-26 16:08:31 +03:00
Dimitrij Denissenko 7456a0e473 Add scan iterator. 2016-04-26 15:01:49 +03:00
Vladimir Mihailenco 31abb18d9a Move logger to internal package. 2016-04-09 14:52:01 +03:00
Vladimir Mihailenco 09ec5f0b4b Merge pull request #304 from go-redis/fix/rename-zrangebyscore
Rename ZRangeByScore to ZRange since it is used in ZRangeByLex.
2016-04-09 13:31:46 +03:00
Vladimir Mihailenco 51349cd90e Rename ZRangeByScore to ZRange since it is used in ZRangeByLex. 2016-04-09 13:15:33 +03:00
Vladimir Mihailenco ae217e0444 Expose cluster node id in ClusterSlots. 2016-04-09 12:52:43 +03:00
Vladimir Mihailenco 5e5a540eb1 Accept interface{} in Eval. Fixes #243. 2016-04-09 11:01:33 +03:00
Dimitrij Denissenko 9f40911f28 Correct method accessors 2016-03-09 09:49:05 +00:00
Vladimir Mihailenco ebf51e1a1b Add prefix to package logger. 2016-02-06 12:16:09 +02:00
Francisco Souza d3ee281748 Declare and use a package-level Logger
This allow users of the API to override the Logger. Fix #250.
2016-02-03 12:30:39 -05:00
Vladimir Mihailenco 3ed364e92a Sort can return nil reply. Fixes #246. 2016-01-22 12:29:23 +02:00
Anatolii Mihailenco 602824623b commands.go: add section parameter to Info function. 2016-01-08 15:03:34 +02:00
Anatolii Mihailenco cbc5360e78 commands.go: Add new functions to cluster. 2015-12-30 14:06:21 +02:00
Anatolii Mihailenco 9b1148903e commands.go: Add ClusterKeySlot function. 2015-12-28 19:29:02 +02:00
Rich Hong a6da93713a Support multiple keys for the PFCOUNT command 2015-12-23 17:24:42 -05:00
Vladimir Mihailenco 2be29240c7 Merge pull request #223 from anmic/feature/cluster-reset
commands: add cluster reset function.
2015-12-22 11:48:42 +02:00
Anatolii Mihailenco e335934332 commands: add cluster reset function. 2015-12-21 18:53:02 +02:00
Anatolii Mihailenco cbcdd97ca2 commands.go: fix input types. 2015-12-12 18:57:56 +02:00
Anatolii Mihailenco 12edede26a Revert "Accept interface{} values in list and set commands."
This reverts commit 401979b597.
2015-12-12 17:41:49 +02:00
Vladimir Mihailenco 401979b597 Accept interface{} values in list and set commands. 2015-12-10 09:52:42 +02:00
Dimitrij Denissenko 397440deca Added CLUSTER FORGET command 2015-12-09 09:33:37 +00:00
Vladimir Mihailenco 83b8c0a9c0 Fix ZStore Weight type. Fixes #206. 2015-12-01 16:28:41 +02:00
Vladimir Mihailenco 842ea553dc Fix GeoRadius reply parsing. 2015-11-14 16:36:21 +02:00
Cosmin Luță 43603e1ea4 Implemented PFADD, PFCOUNT, PFMERGE 2015-11-04 10:48:10 +02:00
Vladimir Mihailenco 96fcac6a43 Merge pull request #180 from go-redis/fix/client-set-name-comment
Fix names and add comments.
2015-10-22 14:24:32 +03:00
Vladimir Mihailenco f04e7879e6 Merge pull request #176 from go-redis/feature/geo-more
Added binding for GEORADIUSBYMEMBER, GEODIST AND GEOHASH.
2015-10-22 14:21:30 +03:00
Vladimir Mihailenco 2bf0ea529d Fix names and add comments. 2015-10-22 14:15:47 +03:00
Will Jessop ffeacb8b03 Implement SetName and GetName
Allows setting and getting the client connection name.

http://redis.io/commands/client-setname
http://redis.io/commands/client-getname
2015-10-20 20:21:58 +01:00
Ian Chan 126513f1fb Added binding for GEORADIUSBYMEMBER, GEODIST AND GEOHASH.
Change-Id: Ia6144617f42629af4c022e595c444ddc6d66f1a3
2015-10-16 17:57:45 +03:00
Vladimir Mihailenco 0944d0167b Remove unneeded formatting. 2015-10-07 18:21:18 +03:00
Vladimir Mihailenco b23b9b7727 Refactor reply parser. 2015-10-07 17:09:20 +03:00
Ian Chan 8a05670e7a Added binding for GEOADD and GEORADIUS. 2015-09-28 11:11:46 +03:00
Vladimir Mihailenco d2689feb56 Add ZADD modifiers. 2015-08-29 13:08:27 +03:00
Vladimir Mihailenco 5dfdaafe04 Merge pull request #156 from go-redis/fix/SRandMemberN
Add SRandMemberN. Fixes #155.
2015-08-26 09:55:17 +03:00
Jeff Pierce 5498ba400d Reverted change to struct ZRangeByScore, implemented ZRevRangeByLex. 2015-08-25 12:15:01 -07:00
Vladimir Mihailenco 9ead45f9e9 Add SRandMemberN. Fixes #155. 2015-08-25 14:02:16 +03:00
Jeff Pierce 2abf5c5f14 Refactored zRangeByScore into zRangeBy. 2015-08-24 14:52:00 -07:00
Jeff Pierce 2de07f2493 Implemented ZRangeByLex with tests. 2015-08-22 20:38:37 -07:00
Vladimir Mihailenco c0b0c99ec5 Document zero expiration. Fixes #143. 2015-08-07 17:09:00 +03:00
Vladimir Mihailenco 379b44f44a Add bytes support for sorted set. 2015-07-16 17:30:16 +03:00
Vladimir Mihailenco 4275a19033 Merge pull request #130 from go-redis/fix/restore-time-duration
Use time.Duration in Restore.
2015-07-13 12:24:22 +03:00
Vladimir Mihailenco 412baf447b Add RestoreReplace. 2015-07-11 12:23:04 +03:00
Vladimir Mihailenco fa185a564f Use time.Duration in Restore. 2015-07-11 12:10:41 +03:00
Vladimir Mihailenco 3c1f2bd45a Allow setting and scaning interface{} values. 2015-07-11 11:54:26 +03:00
Vladimir Mihailenco 4df8b2bbbc Add ClientPause command. 2015-05-15 15:11:22 +03:00
Adrien Bustany 5f85be3173 commands: reduce memory allocations in ZAdd. 2015-05-15 13:10:42 +03:00
Vladimir Mihailenco 0b87c16b61 Remove PSetEx and SetEx. Set should be used instead. 2015-05-14 16:49:47 +03:00
Vladimir Mihailenco fb7803ad5a Use time.Duration to specify timeout. 2015-04-13 09:48:40 +03:00
Vladimir Mihailenco 754c11ab7f Add bitpos command. 2015-04-06 12:48:43 +03:00
Vladimir Mihailenco 4fefa47d6d Merge pull request #79 from go-redis/fix/consistent-zrevrange
Use consistent API in ZRevRangeWithScores and ZRevRange. Fixes #56. Fixes #78.
2015-04-04 14:51:05 +03:00
Vladimir Mihailenco 2dc61d458a Refactor Set, SetNX and SetXX with expiration. 2015-03-30 16:49:08 +03:00
Vladimir Mihailenco 026823f334 Use consistent API in ZRevRangeWithScores and ZRevRange. Fixes #56. Fixes #78. 2015-03-30 16:14:21 +03:00
Dimitrij Denissenko c21e5f3255 Add Redis Cluster support. 2015-03-19 11:19:55 +02:00
Dimitrij Denissenko 34855172f2 Fix/normalise pubsubnumsub response 2015-01-30 17:09:57 +02:00
Geoff Garside daade895aa Add missing "BY" argument to Sort args list.
Fixes "ERR syntax error" issue with Sort{By: "pattern"}.
2014-12-09 10:41:03 +00:00
Vladimir Mihailenco b68ae5e548 Fix rate limiter and add test. 2014-11-13 15:08:25 +02:00
Vladimir Mihailenco f790046fea Merge pull request #50 from go-redis/fix/upgrade-to-redis-2814
Fix PubSubNumSub to work with Redis 2.8.14.
2014-11-06 13:17:51 +02:00
Vladimir Mihailenco c54b831796 Fix PubSubNumSub to work with Redis 2.8.14. 2014-11-06 13:13:24 +02:00
Vladimir Mihailenco c438d40377 Add optimization for '*' pattern in PubSubChannels. 2014-10-07 15:40:00 +03:00
Vladimir Mihailenco a11f80d9d7 Add pubsub* commands. 2014-10-07 13:56:26 +03:00
Vladimir Mihailenco dc9bffa57d Rework ZRangeWithScores. 2014-07-05 13:46:27 +03:00
Vladimir Mihailenco 72a6069cc5 Rename req to cmd. 2014-06-25 10:40:56 +03:00
Vladimir Mihailenco 3bea997988 all: switch to gopkg.in. 2014-05-11 10:44:22 +03:00
blaxill 45e45f8422 Fix ZRevRangeByScoreWithScores to return scores. 2013-06-25 11:11:07 +03:00
Vladimir Mihailenco 0bd64b143c Clean up benchmarks. 2013-04-08 12:43:38 +03:00
QLeelulu ef0cc25b9b Fix float64 formatting. 2013-03-05 12:21:42 +02:00
Vladimir Mihailenco 5a90e32c63 Add *Map commands where possible. 2013-02-02 14:17:01 +02:00
Vladimir Mihailenco e993de1033 commands: Remove Z.ScoreString method. 2012-08-25 16:34:35 +03:00
Vladimir Mihailenco 1f7cc3fea5 Update readme. 2012-08-25 15:40:49 +03:00
Vladimir Mihailenco e40a6041e1 Add SHUTDOWN command. 2012-08-25 15:35:39 +03:00
Vladimir Mihailenco 9ad848d04b Add support for scripting commands. 2012-08-20 13:42:33 +03:00
Vladimir Mihailenco 583e901221 Use IfaceSliceReq for CONFIG GET because it can return (nil) on Redis 2.4.*. 2012-08-20 00:16:26 +03:00
Vladimir Mihailenco 569b1b07ac Add BITCOUNT and BITOP commands. 2012-08-19 15:57:58 +03:00
Vladimir Mihailenco 11e1783560 Review API. 2012-08-17 21:36:48 +03:00
Vladimir Mihailenco 59f901d62f parser: greatly simplify reply parsing. 2012-08-12 21:41:44 +03:00
Vladimir Mihailenco 2f4156dd04 Extract pipeline and multi/exec support to separate files. 2012-08-11 17:42:10 +03:00
Vladimir Mihailenco 83664bb3a8 Add support for watch in transactions. 2012-08-09 17:06:26 +03:00
Vladimir Mihailenco 05223145e0 Change API and update tests. 2012-08-06 15:09:48 +03:00
Vladimir Mihailenco 19a5db6632 Add connnection pool and improve API. 2012-08-05 15:09:43 +03:00
Vladimir Mihailenco 41137c2e6f Add pipelining support. 2012-07-29 12:42:00 +03:00
Vladimir Mihailenco 4814ee7600 Add sorted sets support. 2012-07-27 17:21:50 +03:00
Vladimir Mihailenco 153bd05fb7 Fix multi/exec and add more commands. 2012-07-26 18:16:17 +03:00
Vladimir Mihailenco a74d9a5801 Initial commit. 2012-07-25 16:00:50 +03:00