The most common cause is an application-side connection pool sized larger than the database’s configured session limit for its OCPU count, combined with connections that aren’t being released promptly after use.
Diagnosis
Check the database’s CURRENT_UTILIZATION metric in OCI Console alongside your application’s configured pool size — if your pool max exceeds available sessions, you’ll see this under any concurrent load, not just peak traffic.
Fix
Right-size your connection pool to your database’s OCPU count (Oracle’s guidance is roughly 20-25 sessions per OCPU as a starting point), and ensure your application framework closes connections on request completion rather than holding them for the life of a worker thread.
Leave a Reply