Open golubovai opened 2 months ago
The main reason is that simply disconnecting the socket is guaranteed whereas sending the LogOff request may result in a hang -- which could impact the pool negatively. What do you mean by "expired connections"? When using a pool the general concept is that which connection is used is immaterial and the pool should be able to substitute connections or rebuild them at will.
"expired connections" are idle connections in pool closed after timeout, set by so named parameter in pool constructor. Our database tracks connections by means of logon/logoff triggers. These connections look like they were killed.
@golubovai what exactly does your app rely on the logoff trigger to do? From the app's point of view, the connection was no longer needed, or usable, when the app released it back to the pool. What do you gain from some, unknown time later running a trigger?
@anthony-tuininga we should revisit Thin/Thick behavior with the OCI team.
Hello! Force close of expired connections from pool prevent normal completion and execution of logoff triggers. Why are they force closed instead of normal close?