# java.io.IOException: Connection reset by peer (Socket write error)

- **ID:** `kafka/network-exception-connection-reset`
- **Domain:** kafka
- **Category:** network_error
- **Verification:** ai_generated
- **Fix Rate:** 78%

## Root Cause

Kafka broker forcefully closed TCP connection due to request timeout, network instability, or broker overload causing socket write failure.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 2.8.0 | active | — | — |
| 3.2.0 | active | — | — |
| 3.5.0 | active | — | — |

## Workarounds

1. **Increase broker's 'queued.max.requests' to 500 to handle burst traffic and reduce connection resets.** (80% success)
   ```
   Increase broker's 'queued.max.requests' to 500 to handle burst traffic and reduce connection resets.
   ```
2. **Enable 'connections.max.idle.ms' with a lower value (e.g., 60000) to clean idle connections and reduce resource contention.** (75% success)
   ```
   Enable 'connections.max.idle.ms' with a lower value (e.g., 60000) to clean idle connections and reduce resource contention.
   ```
3. **Add retry logic in producer with exponential backoff to handle transient connection resets.** (85% success)
   ```
   Add retry logic in producer with exponential backoff to handle transient connection resets.
   ```

## Dead Ends

- **** — Socket timeout affects idle connections, not active writes; connection reset still occurs on overload. (70% fail)
- **** — Firewall may cause resets, but disabling it is not a production fix; root cause is broker-side overload. (85% fail)
- **** — Backoff delays reconnection but does not prevent reset during active write; error occurs before backoff. (60% fail)
