# LEADER_NOT_AVAILABLE: 主题 X 的分区 N 无领导者

- **ID:** `communication/kafka-leader-not-available`
- **领域:** communication
- **类别:** runtime_error
- **错误码:** `LEADER_NOT_AVAILABLE`
- **验证级别:** ai_generated
- **修复率:** 85%

## 根因

Kafka 分区领导者代理已崩溃或不可达，控制器尚未通过 ISR 选举出新领导者。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| Kafka 3.4 | active | — | — |
| Kafka 3.5 | active | — | — |
| Kafka 3.6 | active | — | — |

## 解决方案

1. ```
   Run `kafka-leader-election.sh --bootstrap-server localhost:9092 --election-type preferred --topic X --partition N` to trigger a clean leader election from ISR.
   ```
2. ```
   Increase `unclean.leader.election.enable=true` in broker config to allow out-of-sync replicas to become leader as a last resort, then revert.
   ```

## 无效尝试

- **** — Restarting the failed broker may cause split-brain if not cleanly shut down; leader election still fails. (50% 失败率)
- **** — Increasing replication factor doesn't fix immediate leader unavailability; requires reconfiguration. (70% 失败率)
- **** — Manually setting preferred leader via kafka-leader-election.sh can cause data inconsistency if ISR is out of sync. (40% 失败率)
