# ERR Node timeout mismatch: expected 15000 but got 30000 from node 127.0.0.1:7001

- **ID:** `redis/cluster-node-timeout-mismatch`
- **Domain:** redis
- **Category:** config_error
- **Verification:** ai_generated
- **Fix Rate:** 85%

## Root Cause

Redis cluster nodes have inconsistent cluster-node-timeout values, preventing them from forming a coherent cluster.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| Redis 7.0.0 | active | — | — |
| Redis 7.2.4 | active | — | — |
| Redis 6.2.14 | active | — | — |

## Workarounds

1. **Set consistent cluster-node-timeout on all nodes by editing redis.conf: cluster-node-timeout 15000. Then restart each node gracefully: redis-cli -p 7001 SHUTDOWN NOSAVE; redis-server /path/to/redis.conf. Verify with CLUSTER INFO.** (90% success)
   ```
   Set consistent cluster-node-timeout on all nodes by editing redis.conf: cluster-node-timeout 15000. Then restart each node gracefully: redis-cli -p 7001 SHUTDOWN NOSAVE; redis-server /path/to/redis.conf. Verify with CLUSTER INFO.
   ```
2. **Use CONFIG SET cluster-node-timeout 15000 on each node, then CONFIG REWRITE to persist. Example: redis-cli -p 7001 CONFIG SET cluster-node-timeout 15000 && redis-cli -p 7001 CONFIG REWRITE.** (85% success)
   ```
   Use CONFIG SET cluster-node-timeout 15000 on each node, then CONFIG REWRITE to persist. Example: redis-cli -p 7001 CONFIG SET cluster-node-timeout 15000 && redis-cli -p 7001 CONFIG REWRITE.
   ```
3. **If nodes are already in a failed state, use CLUSTER FORGET to remove misconfigured nodes, fix their config, and rejoin them with CLUSTER MEET.** (75% success)
   ```
   If nodes are already in a failed state, use CLUSTER FORGET to remove misconfigured nodes, fix their config, and rejoin them with CLUSTER MEET.
   ```

## Dead Ends

- **** — Restarting doesn't change configuration values. The mismatch is in the config files, not a transient state. (95% fail)
- **** — This command sets the config epoch for failover, not the cluster-node-timeout. It doesn't address the timeout mismatch. (80% fail)
- **** — CONFIG SET changes the runtime value but may not persist after restart. Also, the cluster may reject the change if nodes are already in a mixed state. (70% fail)
