Merry Christmas & Happy 2027! Less downtime. More good times. Celebrating 13 years of sorlavit.com
Skip to content
Sorlavit KimIT Support, Network & Infrastructure Services Let’s talk

ปุ่มแปลไทยจะเปิดบทความผ่าน Google Translate เพื่อแปลอัตโนมัติ โดยคงโค้ดและคำสั่งไว้ตามต้นฉบับ

Oracle Database / Sessions, Locks & Transactions

Find idle sessions that still hold transactions

An INACTIVE session can retain an open transaction while its application waits for user input or abandons a request.

Compiled for Sorlavit Kim · Published · Updated · 1 min read

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 s.sid, s.serial#, s.username, s.status, s.last_call_et, t.start_time, t.used_ublk FROM v$session s JOIN v$transaction t ON s.taddr = t.addr;

Read the result

The join distinguishes a session with transaction state from an idle connection with none. Undo usage provides size context, not a precise rollback duration.

Resolve and verify

Contact the application owner and identify where the transaction should end. Correct missing commit, rollback or exception-cleanup paths and validate pool behavior.

Operational precautions

Do not equate INACTIVE with safe to terminate. The transaction may contain important pending business work.

Share this article

Back to all articles