1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-04 15:02:09 +03:00
Commit Graph

210 Commits

Author SHA1 Message Date
Leibale
504a05baad Release client@1.5.9 2023-08-23 15:16:51 -04:00
Leibale
fe74e322dd upgrade deps 2023-08-23 14:53:26 -04:00
Joren Vandeweyer
bc8abd5a38 fixes #2524 delaying graceful exit while pingInterval is set (#2525)
* fixes #2524

* `clearTimeout` in `disconnect` too

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-08-23 13:20:20 -04:00
Leibale
2baf5df23c Release client@1.5.8 2023-05-31 15:46:32 +03:00
Leibale Eidelman
0298c1ac41 upgrade deps (#2517)
* upgrade deps

* fix graph tests
2023-05-29 09:01:34 -04:00
Leibale Eidelman
100a5232ac use setImmediate instead of queueMicrotask (to improve performance) (#2516) 2023-05-29 09:01:22 -04:00
Kumar Arnav
e696653bf9 Add support for LATENCY LATEST (#2514)
* Add support for LATENCY LATEST.

* Fix the review comments.

* Fix the review comments.

* Update LATENCY_LATEST.ts

* Update dockers.ts

* Update LATENCY_GRAPH.spec.ts

* enable debug mode in tests

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-05-29 09:00:58 -04:00
Codrin-Mihai Chira
d4f194352f XINFO CONSUMERS - add support for the inactive field (#2490)
* Support XINFO CONSUMERS: Added the inactive field

* Update XINFO_CONSUMERS.ts

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-05-21 08:06:46 -04:00
Leibale
e8e09a7b5b Release client@1.5.7 2023-04-27 18:46:40 -04:00
Leibale Eidelman
dc920d3b67 fix isolationPool after reconnect (#2409)
* fix #2406 - fix isolationPool after reconnect

* revert breaking change

* fix
2023-04-26 14:44:09 -04:00
Leibale Eidelman
ba31c8a50e fix #2443 - fix multiple sockets on error in socket initiator (#2480)
* fix #2443 - fix multiple sockets on error in socket initiator

* handle `error` events in test
2023-04-26 12:56:42 -04:00
Carl Hopf
e1658ba6ef fix cluster extractFirstKey skip commandOptions() passed to args (#2439)
* cluster extractFirstKey skip commandOptions() passed to args

* cluster with commandOptions unit test

* improve performance

* fix type

* fix type

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-04-26 12:56:04 -04:00
Gady
c88dea6151 Augment subpackages npm info (#2478)
* augment subpackages npm info

* some more keywords

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-04-24 12:41:44 -04:00
sorilove
9f2e27d07d Fixed a bug in the updateIsActive function (#2476)
Missing PubSubType.SHARDED and duplicate comparison of PubSubType.CHANNELS when comparing listeners size in updateIsActive function
2023-04-24 12:41:30 -04:00
Leibale
f756d9aaa9 Release client@1.5.6 2023-02-24 18:10:07 -05:00
Leibale Eidelman
4937efca6b upgrade dependencies (#2426) 2023-02-24 18:05:43 -05:00
Leibale Eidelman
e95b258dca fix #2419 - fix RESP2 array decoder in edge cases (#2424) 2023-02-24 17:34:19 -05:00
Leibale Eidelman
63e5228ce6 fix #2411 - export RedisFlushModes (#2425) 2023-02-24 17:34:00 -05:00
Mik13
0f28dad2a2 Execute empty MULTI (#2423)
* Fix multi.exec with empty queue and previous watch

When calling exec on a multi instance which you did not use, no command is sent currently.

This is a problem for watched keys, because no EXEC means no unwatch, which might cause hard-to-debug problems.

Proposed Fix: Sending UNWATCH

* execute empty multi command (instead of skipping)

* Update index.ts

* Update index.ts

* Update multi-command.ts

* Update multi-command.ts

* Update multi-command.ts

* Update multi-command.ts

* short circuit empty pipelines

* Update index.ts

---------

Co-authored-by: Leibale <me@leibale.com>
2023-02-24 17:33:16 -05:00
Leibale
e4229a40b6 Release client@1.5.5 2023-01-30 14:27:42 -05:00
Leibale Eidelman
7cb467ad23 fix #2398 - fix v4 interface in legacyMode (#2402) 2023-01-30 14:24:11 -05:00
Leibale
f1e951debe Release client@1.5.4 2023-01-28 18:24:14 -05:00
Leibale Eidelman
b3cd78503d fix reconnecting event (#2396)
* fix #2395 - fix reconnecting event

* Update socket.ts
2023-01-28 18:20:48 -05:00
Leibale
be335efc20 Release client@1.5.3 2023-01-27 09:47:16 -05:00
Leibale Eidelman
2dba7f200b fix #2392 - handle errors in legacyMode (#2394) 2023-01-27 09:45:22 -05:00
Leibale
92043563f2 Release client@1.5.2 2023-01-25 20:46:05 -05:00
Leibale
c6587e219a Release client@1.5.1 2023-01-25 20:38:56 -05:00
Leibale Eidelman
3bd28a9924 fix #2391 - remove node: prefix from imports 2023-01-25 20:37:00 -05:00
Leibale
4904fe4a5d Release client@1.5.0 2023-01-25 13:23:58 -05:00
Leibale
e9de74c96f revert client version to 1.4.2 2023-01-25 13:23:28 -05:00
Leibale Eidelman
0a46fcbdaf upgrade dependencies (#2381)
* upgrade deps

* upgrade dependencies

* fix v3 benchmark

* update package-lock.json
2023-01-25 13:05:42 -05:00
Leibale Eidelman
3b1bad2296 Add support for sharded PubSub (#2373)
* refactor pubsub, add support for sharded pub sub

* run tests in redis 7 only, fix PUBSUB SHARDCHANNELS test

* add some comments and fix some bugs

* PubSubType, not PubSubTypes 🤦‍♂️

* remove test.txt

* fix some bugs, add tests

* add some tests

* fix #2345 - allow PING in PubSub mode (remove client side validation)

* remove .only

* revert changes in cluster/index.ts

* fix tests minimum version

* handle server sunsubscribe

* add 'sharded-channel-moved' event to docs, improve the events section in the main README (fix #2302)

* exit "resubscribe" if pubsub not active

* Update commands-queue.ts

* Release client@1.5.0-rc.0

* WIP

* use `node:util` instead of `node:util/types` (to support node 14)

* run PubSub resharding test with Redis 7+

* fix inconsistency in live resharding test

* add some tests

* fix iterateAllNodes when starting from a replica

* fix iterateAllNodes random

* fix slotNodesIterator

* fix slotNodesIterator

* clear pubSubNode when node in use

* wait for all nodes cluster state to be ok before testing

* `cluster.minimizeConections` tests

* `client.reconnectStrategry = false | 0` tests

* sharded pubsub + cluster 🎉

* add minimum version to sharded pubsub tests

* add cluster sharded pubsub live reshard test, use stable dockers for tests, make sure to close pubsub clients when a node disconnects from the cluster

* fix "ssubscribe & sunsubscribe" test

* lock search docker to 2.4.9

* change numberOfMasters default to 2

* use edge for bloom

* add tests

* add back getMasters and getSlotMaster as deprecated functions

* add some tests

* fix reconnect strategy + docs

* sharded pubsub docs

* Update pub-sub.md

* some jsdoc, docs, cluster topology test

* clean pub-sub docs

Co-authored-by: Simon Prickett <simon@redislabs.com>

* reconnect startegy docs and bug fix

Co-authored-by: Simon Prickett <simon@redislabs.com>

* refine jsdoc and some docs

Co-authored-by: Simon Prickett <simon@redislabs.com>

* I'm stupid

* fix cluster topology test

* fix cluster topology test

* Update README.md

* Update clustering.md

* Update pub-sub.md

Co-authored-by: Simon Prickett <simon@redislabs.com>
2023-01-25 11:00:39 -05:00
Ananda
e75a5db3e4 Add CLIENT LIST command and fix CLIENT INFO (#2368)
* fix client info

* add client list

* fix key validation in transformClientInfoReply

* fix issue with field in CLIENT LIST reply

* clean code

* fix multimem

* fix qbufFree argvMem totMem multiMem

Co-authored-by: Leibale <me@leibale.com>
2023-01-25 10:52:59 -05:00
Benjie
2287efdd1e Fix legacyMode/pingInterval issue (#2386)
* Add a test for legacyMode pingInterval

* Apply patch to fix legacy mode ping interval

* use this.#sendCommand instead of this.#v4

Co-authored-by: Leibale <me@leibale.com>
2023-01-24 20:11:48 -05:00
Ananda
63511e5b9b Add latency graph command (#2359)
* add latency graph command

* fix coding style

* Clean code

* use "enable-debug-command" is redis 7+ only

* Update LATENCY_GRAPH.spec.ts

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-01-18 12:55:38 -05:00
Leibale Eidelman
fad23973a5 fix #2333 - fix quit reply (#2346) 2023-01-18 12:55:11 -05:00
Brandon
aa75ee49c6 #2038 Resolve legacy mode hGetAll returning in the wrong format compared to v3 results (#2367)
* Ensure that transformReply is optionally passed through to commands in legacy mode within multi

* Execute transformReply on legacy #sendCommand

* Scope transform changes to hGetAll

* Extensible method of transforming legacy replies, expands RedisCommand interface

* check `TRANSFORM_LEGACY_REPLY` on client creation (rather then on command exec), add tests

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-01-18 12:54:29 -05:00
Leibale Eidelman
c5b6f77c33 exclude dist from coverage report 2022-12-26 13:35:37 -05:00
Vojtech Novak
f6093b7b0f fix: zero ttl is ignored (#2349)
* fix: zero ttl is ignored

* Update SET.ts

* Update SET.ts

Co-authored-by: Leibale Eidelman <me@leibale.com>
2022-12-15 12:04:13 -05:00
Leibale Eidelman
1557164b1c Release client@1.4.2 2022-11-24 14:10:38 -05:00
Leibale Eidelman
549a779a01 Merge branch 'master' of github.com:redis/node-redis 2022-11-24 14:06:20 -05:00
Leibale Eidelman
3b36963986 Release client@1.4.1 2022-11-24 14:05:42 -05:00
Leibale Eidelman
13ad249ae6 fix #2010 - stop reconnect after .disconnect() (#2323)
* fix #2010 - stop reconnect after .disconnect()

* fix quit
2022-11-24 14:03:34 -05:00
Leibale Eidelman
28b9701543 fix #2318 - add MULTI (uppercase) (#2324) 2022-11-24 14:01:43 -05:00
Leibale Eidelman
d923f7127a fix #2205 - reject commands in connect phase when disableOfflineQueue is true (#2328) 2022-11-24 14:01:09 -05:00
Leibale Eidelman
e5532706cf fix #2205 - reject commands in connect phase when disableOfflineQueue is true 2022-11-16 16:27:36 -05:00
Leibale Eidelman
2e6fdee052 Release client@1.4.0 2022-11-10 03:56:23 -05:00
Leibale Eidelman
3c2f7ab92a Ping interval (#2321)
* fix #1598 fix #2276 - add `pingInterval` to client config

* setPingTimer on ready (instead of on connect)

* use isReady (instead of isOpen) and fix test

* Update client-configuration.md
2022-11-10 03:49:56 -05:00
Leibale Eidelman
aa869b72d4 Release client@1.3.1 2022-11-01 16:12:15 -04:00
Jonas Faure
252c2192ea fix(client): Avoids infinite promise-chaining when socket's creation fails (#2295)
* fix(client): timeout issues during tests

* fix(client): avoiding infinite Promise chaining while socket creation fails

* fix(client): Added missing semicolons

* clean test

Co-authored-by: leibale <leibale1998@gmail.com>
2022-10-26 16:42:52 -04:00