Skip to content

Clarification on Redis Cluster transactions and client-side support #3209

@eye-dee

Description

@eye-dee

Description:
I came across this detailed explanation on StackOverflow regarding transactions in Redis Cluster:
https://stackoverflow.com/questions/42088324/is-there-any-redis-client-java-prefered-which-supports-transactions-on-redis-c/42091605#42091605

The conclusion there was that:

  • Transactions are safe if all keys are on the same node.
  • Cross-slot transactions require trade-offs and are not natively supported.
  • Clients have not agreed on a global strategy.

Questions:

  • Is this explanation still relevant today for Redis Cluster transactions (as of Redis 7 / current client libraries)?

  • If so, would it make sense to introduce a clear API to obtain a connection directly by node id or by slot in order to:

    • Safely manage single-node transactions.
    • Make it more explicit to the developer which node they’re interacting with.

Metadata

Metadata

Assignees

Labels

status: declinedA suggestion or change that we don't feel we should currently applytype: documentationA documentation update

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions