Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Finding rows of locked objects with 3 - ROW_X (SX): Row Exclusive Table Lock

knowledgespringApr 24 2020 — edited Apr 25 2020

Finding rows of locked objects with 3 - ROW_X (SX): Row Exclusive Table Lock.  there are no blockers and no waiters in db. Tables are locked with locked mode 3.

dbms_rowid.rowid_create ( 1, c.object_id, ROW_WAIT_FILE#, ROW_WAIT_BLOCK#, ROW_WAIT_ROW# ) , row_ids extracted with this are invalid row ids in this case. i used even a.ROW_WAIT_OBJ#. online doc says ROW_WAIT_* valid only if the sessions are waiting for another transaction to commit/rollback.

select c.*,b.*,a.* From gv$locked_object c, dba_objects b ,gv$session a where c.OBJECT_ID=b.OBJECT_ID   and a.inst_id=c.inst_id and a.sid = c.session_id AND a.type='USER';

p1test: file#, p1: file id of database file. (single tablespace name) p2text: block#, p2:serveral numbers, p3text:id# , p3: 3 ids for whole output

is it something wrong with tablespace p1,p2,p3  , locked tables are partitioned and all partitions of one locked table uses single tablespace.

database: oracle 12.2 

Can we get rows or correct row ids  of locked objects involved with LCOKED MODE 3?. 

Comments
Post Details
Added on Apr 24 2020
1 comment
3,181 views