# 错误：复制积压缓冲区溢出，断开副本连接

- **ID:** `redis/replica-repl-backlog-overflow`
- **领域:** redis
- **类别:** system_error
- **错误码:** `ERM`
- **验证级别:** ai_generated
- **修复率:** 85%

## 根因

主节点上的复制积压缓冲区超过配置大小，导致节点断开副本连接以防止内存耗尽。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| Redis 6.2.6 | active | — | — |
| Redis 7.0.12 | active | — | — |
| Redis 7.2.4 | active | — | — |

## 解决方案

1. ```
   Increase the replication backlog size: CONFIG SET repl-backlog-size 100mb. This provides more buffer for replicas to catch up.
   ```
2. ```
   Add more replicas or improve network bandwidth to reduce replication lag. Monitor with INFO replication.
   ```
3. ```
   Enable client output buffer limits for replicas: CONFIG SET client-output-buffer-limit replica 256mb 64mb 60. This prevents a single slow replica from overwhelming the backlog.
   ```

## 无效尝试

- **** — Setting backlog size to zero disables partial resynchronization, forcing full syncs on each reconnect, increasing network load. (80% 失败率)
- **** — Restarting clears the backlog temporarily but does not address the root cause of high write volume or slow replicas. (75% 失败率)
- **** — Large keys are not the direct cause; the backlog overflow is due to accumulated write commands, not key size. (50% 失败率)
