Home » RDBMS Server » Server Administration » external table how to check if currently open (Oracle database 19c,, RedHatEnterpriseServer 6.10)
external table how to check if currently open [message #686212] Fri, 01 July 2022 14:32 Go to next message
Messages: 398
Registered: March 2005
Senior Member
we are unable to compile/drop a package that is hanging or throwing this error:

ORA-04021: timeout occurred while waiting to lock object

currently at the time the package is compiled there are no objects/tables locks nor any other users connected to the database and/or blocking sessions. we purposely had instructed users not to connect/login to the database so to diagnose the issue.

then we run a trace and trace file shows that there is an external table that is open

Chains most likely to have caused the hang:
[a] Chain 1 Signature: 'external table open'<='library cache pin'
Chain 1 Signature Hash: 0x18ad84a0
[b] Chain 2 Signature: 'REPL Capture/Apply: RAC AQ qmn coordinator'
Chain 2 Signature Hash: 0x38f1e28b
[c] Chain 3 Signature: 'external table open'
Chain 3 Signature Hash: 0xac7f5618

how do we check what are the external tables that are in-use or currently open? please advise.

thanks so much in advanced.
Re: external table how to check if currently open [message #686213 is a reply to message #686212] Fri, 01 July 2022 15:13 Go to previous message
Michel Cadot
Messages: 68645
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator

My first idea is to use "fuser" at OS level on all external table files (see DBA_EXTERNAL_LOCATIONS).

Previous Topic: Not able to login to database using sqlplus after os patch
Next Topic: flush single SQL plan on RAC
Goto Forum:

Current Time: Thu Apr 25 10:36:31 CDT 2024