In the current state a HTTP request can open multiple JDBC connections at the same time. It requires the DB connection pool to be configured with more connections that the size of HTTP thread pool. It also books too many DB "heavy" connections comparing to the effective activity.
The goal is that a single DB connection must be dedicated to a HTTP request. Note that in certain conditions a second connection is required for bach inserts/updates (this is a design constraint of MyBatis which requires two different sessions).
The default settings of HTTP and DB pools must be fixed accordingly.
Compute Engine has long-living steps and should not keep long DB connections open. The mechanism should not be changed. As a safeguard we should ensure that CE does not open two DB connections at the same time.