Skip to content

Releases: DriverX/aioredis-cluster

v2.7.0

18 Dec 12:22
Compare
Choose a tag to compare

Rework PubSub and fix race conditions (#27)

  • add aioredis_cluster.aioredis.stream module
  • rework PubSub command execution flow for prevent race conditions on spontaneously server channels unsubscribe push
  • make fully dedicated RedisConnection implementation for cluster
  • RedisConnection once entered in PubSub mode was never exit in them, because is too hard handle spontaneously unsubscribe events from Redis with simultaneously (P|S)UNSUBSCRIBE manually calls
  • fully rewrite handling PUB/SUB replies/events
  • for Cluster, RedisConnection and ConnectionsPool in_pubsub indicates flag when connector have in pubsub mode connections instead number of PUB/SUB channels
  • add key slot handling for sharded PubSub channels in non-cluster dedicate RedisConnection
  • fix and improve legacy aioredis tests
  • improve support for py3.12
  • improve support for Redis 7.2

v2.7.0rc1

14 Dec 12:21
f597f81
Compare
Choose a tag to compare
v2.7.0rc1 Pre-release
Pre-release

Rework PubSub and fix race conditions (#27)

  • add aioredis_cluster.aioredis.stream module
  • rework PubSub command execution flow for prevent race conditions on spontaneously server channels unsubscribe push
  • make fully dedicated RedisConnection implementation for cluster
  • RedisConnection once entered in PubSub mode was never exit in them, because is too hard handle spontaneously unsubscribe events from Redis with simultaneously (P|S)UNSUBSCRIBE manually calls
  • fully rewrite handling PUB/SUB replies/events
  • for Cluster, RedisConnection and ConnectionsPool in_pubsub indicates flag when connector have in pubsub mode connections instead number of PUB/SUB channels
  • add key slot handling for sharded PubSub channels
  • fix and improve legacy aioredis tests
  • add tests for py3.12
  • add tests for Redis 7.2
  • more tests

v2.6.0

02 Nov 17:39
9fb19d9
Compare
Choose a tag to compare
  • fix stuck aioredis.Connection socket reader routine for sharded PUB/SUB when cluster reshard and Redis starts respond MOVED error on SSUBSCRIBE commands #24

v2.5.0

03 Apr 19:31
Compare
Choose a tag to compare
  • improve connection creation timeout
  • do not lose connection in Pool while execute PING probe
  • respect Pool.minsize in idle connections detector
  • shuffle startup nodes for obtain cluster state

v2.4.0

08 Mar 15:59
Compare
Choose a tag to compare
  • add support Sharded PUB/SUB
  • new methods and properties spublish, ssubscribe, sunsubscribe, pubsub_shardchannels, pubsub_shardnumsub, sharded_pubsub_channels
  • drop support Python 3.6, 3.7
  • add support Python 3.11
  • idle connections detection in connections pool
  • change acquire connection behaviour from connection pool. Now connection acquire and release to pool by LIFO way for better idle connection detection
  • deprecated state_reload_frequency option from create_cluster factory was removed

v2.4.0b1

07 Mar 16:53
9dbd324
Compare
Choose a tag to compare
v2.4.0b1 Pre-release
Pre-release
  • add support Sharded PUB/SUB
  • new methods and properties spublish, ssubscribe, sunsubscribe, pubsub_shardchannels, pubsub_shardnumsub, sharded_pubsub_channels
  • drop support Python 3.6, 3.7
  • add support Python 3.11
  • idle connections detection in connections pool
  • change acquire connection behaviour from connection pool. Now connection acquire and release to pool by LIFO way for better idle connection detection
  • deprecated state_reload_frequency option from create_cluster factory was removed

v2.3.1

29 Jul 16:09
Compare
Choose a tag to compare
  • fix bypass username argument for pool creation

v2.3.0

26 Jul 13:40
Compare
Choose a tag to compare
  • add support Redis 6 AUTH command with username
  • factories create_cluster, create_redis_cluster, aioredis_cluster.aioredis.create_connection now support username argument
  • add auth_with_username method for AbcConnection, AbcPool and impementations

v2.2.2

19 Jul 00:03
Compare
Choose a tag to compare
  • fix problem when RedisConnection was GC collected after unhandled asyncio.CancelledError
  • fix default db argument for pool/connection in cluster mode

v2.2.1

18 Jul 18:47
15495f4
Compare
Choose a tag to compare
  • (revert) apply cluster state only if cluster metadata is changed