问题
> ALTER PACKAGE blah COMPILE;
(wait about 10 minutes)
> ORA-04021: timeout occurred while waiting to lock object
I understand why I get the timeout error (the package is in use).
Does anyone know if there's a way to change the default 10 minute wait interval? Can this be configured at a database / session / statement level?
Thanks
回答1:
there is a DDL_LOCK_TIMEOUT parameter since 11gR1 :
DDL_LOCK_TIMEOUT
specifies a time limit for how long DDL statements will wait in a DML lock queue. The default value of zero indicates a status ofNOWAIT
. The maximum value of 1,000,000 seconds will result in the DDL statement waiting forever to acquire a DML lock.
I'm not sure you can change the default timeout in the previous releases.
来源:https://stackoverflow.com/questions/1398685/can-oracles-default-object-lock-timeout-be-changed