Oracle Database / Connections & Oracle Net
ORA-03135: investigate a lost connection without assuming idle timeout
A connection can disappear because of network equipment, server termination or a session timeout. Establish whether the break follows idleness or an active request.
Environment and inputs: Oracle Database 19c baseline · SQL*Plus-compatible SQL unless RMAN, DGMGRL, ADRCI or a host shell is specified. Check release, patch level, edition and container first.
Start with this diagnostic
Use the stated SQL, RMAN, DGMGRL or host shell and replace sample names with approved targets. DBA and V$ views need authorized catalog access in the correct container. Do not grant broad privileges for an example.
SELECT sid, serial#, username, status, last_call_et, service_name FROM v$session WHERE username = 'APP_USER';
Read the result
An authorized DBA can compare surviving application sessions and idle-state timing. A missing session after failure does not reveal which network component ended it.
Resolve and verify
Collect client and server timestamps, pool lifetime settings and firewall idle policies. Adjust validated keepalive or pool settings only after the failure pattern is understood.
Operational precautions
Do not treat SQLNET.EXPIRE_TIME as a universal application idle timeout setting or retry non-idempotent work blindly.