What was going on
I built an async ExecuteQuery wrapper over node-oracledb with a connection pool, and after a while I started getting ORA-01000: maximum open cursors exceeded. The thread is from June 2015 and the maintainer (cjbj) weighed in with the diagnosis. After applying the suggested changes the code ran for over 16 hours with no issues and open connections never exceeded 2.

What fixed it
ORA-01000 with a connection pool almost always means sessions or cursors arent being released: either youre not releasing connections back to the pool, or your pool is too small for Node's throughput so statement cache size times pool size blows past the cursor limit. The fix is to make sure every code path releases the connection and to size the pool for your concurrency. The reporter confirmed the run stayed healthy for 16+ hours after the change.