Error Message :
ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired
DB Unload fails to complete and returns errors similar to those below - table names in [brackets] may differ:
Investigation
This is a common message that is returned by Oracle in one of the following scenarios:
1) A table is already locked by some query. Example: a "select for update" has been executed and has not yet "committed/rollback" and then a "select query" is sent to the same table.
2) A Database user or another application is running a query that caused a lock on a table.
Automation Engine any version
Lock on the Database side
The recommended actions are:
Once the lock / locking session has ended, run DB Unload again.
This can also be caused by multiple instances of the utilities running at the same time. For instance, if the archive is started while the unload is running, the unload will throw this error and end without finishing. Only run one utility at a time.
Since the introduction of the Performance Check with Automation Engine version 21.0.9 this problem can also occur at the exact hour (HH:00) and from version 21.0.10/24.x.x at minute 55 (HH:55).
This has been recognized as a Defect (DE610689) and will be fixed in future versions of the Automation Engine (expected to be fixed on version 21.0.12 and 24.2.0).
Please add to the uc.msl file used by the utilities (bin directory) on the lines with 3556 before the 60 the number 54
00003556DI54,60,1460,1461,1555
00003556EI54,60,1460,1461,1555
00003556FI54,60,1460,1461,1555
After this modification, the error will continue to occur in case the reorg is running at :55 but this time it will be treated as deadlock and the statement that failed (on this case the truncate table DIVDB) should be re-run and the reorg jobs will finish correctly.