mattermost-plugin-bridge-xmpp/server
Felipe Martin 0442bd7b72
Some checks failed
ci / plugin-ci (push) Has been cancelled
feat: implement connection caching for ghost user lifecycle management
Implement comprehensive connection caching system to prevent XMPP connection leaks and support HA environments:

- Add node-specific XMPP resources using format "{baseResource}-node-{diagnosticId[:8]}" for HA compatibility
- Implement thread-safe connection cache with mutex protection in UserManager
- Add cache-first lookup in GetUser/GetOrCreateUser methods to prevent duplicate connections
- Update lifecycle manager to efficiently check cached users instead of expensive KV store queries
- Add graceful shutdown cleanup to properly disconnect all cached connections
- Implement cache management methods: getCachedUser, cacheUser, removeCachedUser, getCachedUsers
- Update activity tracking to work with cached connections
- Add proper cache cleanup when users are disconnected or deleted

This prevents connection leaks identified in previous implementation while maintaining efficient ghost user lifecycle management with 30-minute inactivity timeout.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-12 21:18:35 +02:00
..
bridge feat: implement connection caching for ghost user lifecycle management 2025-08-12 21:18:35 +02:00
command chore: fix lint issues 2025-08-06 18:25:25 +02:00
config feat: refactor bridge user detection and fix linting issues 2025-08-12 12:01:42 +02:00
logger feat: restore XMPP bridge to use direct client connection instead of bridge user 2025-08-04 18:04:10 +02:00
model chore: fix lint issues 2025-08-06 18:25:25 +02:00
store/kvstore chore: fix lint issues 2025-08-06 18:25:25 +02:00
xmpp fix: properly check responses for registration and cancellation requests 2025-08-12 18:56:06 +02:00
.gitignore Initial commit from mattermost-plugin-starter-template 2025-07-30 13:12:52 +02:00
api.go Initial commit from mattermost-plugin-starter-template 2025-07-30 13:12:52 +02:00
configuration.go chore: fix lint issues 2025-08-06 18:25:25 +02:00
hooks_sharedchannels.go chore: fix lint issues 2025-08-06 18:25:25 +02:00
hooks_user.go feat: refactor bridge user detection and fix linting issues 2025-08-12 12:01:42 +02:00
job.go Initial commit from mattermost-plugin-starter-template 2025-07-30 13:12:52 +02:00
main.go Initial commit from mattermost-plugin-starter-template 2025-07-30 13:12:52 +02:00
plugin.go chore: fix lint issues 2025-08-06 18:25:25 +02:00
plugin_test.go chore: fix lint issues 2025-08-06 18:25:25 +02:00