Release v2.0.6 - Resource Leak Fix & Connection Stability
🔧 Critical Fix:
- Fixed httpx client resource leak causing intermittent server failures on Railway
- Resolved connection exhaustion issue where httpx clients were never closed on shutdown
- Fixed cleanup in web_server.py lifespan manager to properly close github_provider and website_provider
- Prevented accumulation of 60+ leaked connections (6 workers × 2 providers × 5 connections each)
🚀 Connection Pool Improvements:
- Increased httpx keepalive_expiry from 5s to 30s to reduce connection churn
- Increased max_keepalive_connections from 3 to 5 in GitHubClient
- Increased max_connections from 5 to 10 in GitHubClient
- Increased max_keepalive_connections from 3 to 5 in WebsiteProvider
- Increased max_connections from 5 to 10 in WebsiteProvider
🔌 Redis Connection Resilience:
- Increased socket_timeout from 5s to 30s to prevent premature timeouts
- Increased socket_connect_timeout from 5s to 10s
- Enabled TCP keepalive for Redis connections
- Enabled retry_on_timeout for better reliability
📦 Technical Details:
- Added comprehensive error handling for provider cleanup in web_server.py
- Matched cleanup pattern already used successfully in server.py
- Optimized connection pool settings to balance performance and resource usage
- Enhanced timeout configurations for production stability
Impact: This release resolves the intermittent failures requiring manual redeployments. The server will now run stably for extended periods without resource exhaustion.
Installation
PyPI
```bash
pip install augments-mcp-server==2.0.6
```
uv
```bash
uv add augments-mcp-server==2.0.6
```
MCP Server Registry
The server is available in the MCP server registry at `dev.augments/mcp`.