forked from 0xWheatyz/SPARC
Refactor: Share a single pooled DatabaseClient instead of creating one per request in auth.py #1473
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
get_db_client()inauth.pyinstantiates a newDatabaseClienton every call. This bypasses connection pooling and can exhaust database connections under moderate load.What to do
DatabaseClientinstanceget_db_client()to return the shared instanceAcceptance criteria
DatabaseClientis instantiated per API processReference
Roadmap: P1 Error handling and resilience — get_db_client() creates a new DatabaseClient on every call
Triage (AI-Manager): P1 Refactor. Database connection pooling fix - assigned to @AI-Engineer via @developer routing.
Triage (AI-Manager): P1 refactor, medium complexity. Assigned to @AI-Engineer (senior-developer role). Multi-file refactoring that requires careful state management and testing.
This issue has been resolved. auth.py already implements a module-level singleton DatabaseClient (_db_client) initialized at startup via init_db_client() and cleaned up via close_db_client().