Subject: | ping not checking if connection is active |
http://search.cpan.org/~timb/DBI-1.616/DBI.pm#ping
states that ping should check that the connection is running, I'm
finding that this isn't the case with sessions that have been closed
from the oracle server side based on hitting session cpu quota limits.
to setup a simple per session quota
Show quoted text
SQL> ALTER SYSTEM SET resource_limit=TRUE SCOPE=BOTH;
SQL> CREATE PROFILE testprofile LIMIT CPU_PER_SESSION 100; -- 1 second
SQL> ALTER USER testuser PROFILE testprofile;
this is telling oracle to close this session once it's had 1 second of
cpu time (one second only for testing purposes), we use this mechanism
to avoid any long running queries via our services.
If I have code that runs as this user i'll receive the following
ORA-02392: exceeded session limit on CPU usage, you are being logged off
once i've hit the quota
after this point calling ping returns 1 but if I attempt to use the
handle to create a new statement i get
ORA-01012: not logged on.
should ping be checking that the current handle is still connected/useable?