Oracle Database / Sessions, Locks & Transactions
Diagnose enq: TX - row lock contention in context
A transaction wait often reflects another session's uncommitted work, but TX waits have several causes. Match the event with blocker and object evidence.
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#, event, blocking_session, row_wait_obj# FROM v$session WHERE event = 'enq: TX - row lock contention';
Read the result
A current valid row-wait object can help identify the affected segment. The object number and event alone do not establish the business row or exact TX cause.
Resolve and verify
Inspect the blocking transaction, SQL and constraint activity. Shorten transactions and fix competing updates or key conflicts through the application owner.
Operational precautions
Do not assume adding an index resolves every TX wait or expose row identifiers containing business context publicly.