mirror of https://github.com/langgenius/dify.git
This commit removes the Redis caching mechanism for tool provider list API that was introduced in #29101. ## Problems with the current caching approach 1. **Cache inconsistency**: After CRUD operations on tool providers, cached data may not be properly invalidated, causing stale data. 2. **Race conditions**: Cache invalidation timing issues - invalidating inside Redis locks caused timeouts (#30150), moving outside causes race conditions. 3. **Hard to maintain**: Manual cache invalidation scattered across multiple service files is error-prone and difficult to maintain. 4. **User-facing symptoms**: - Newly created tools not appearing in the list - Deleted tools still showing up - Updated tool configurations not reflecting immediately - MCP provider auth state not updating correctly ## Changes - Remove `ToolProviderListCache` class and its usage - Remove cache invalidation calls from all service files - Remove related test mocks - Keep the code optimizations from #29101 (session management, batch processing) Fixes #30322 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| api_tools_manage_service.py | ||
| builtin_tools_manage_service.py | ||
| mcp_tools_manage_service.py | ||
| tool_labels_service.py | ||
| tools_manage_service.py | ||
| tools_transform_service.py | ||
| workflow_tools_manage_service.py | ||