I guess this is because you need to obtain a library cache lock in
order to change the object definition. Since there is no enqueue
mechanism for this resource, you can 't just 'lock table ... in
exclusive mode; ' All that gives you is a DML lock.
One way to avoid this is to write a PL/SQL routine that uses DBMS_SQL
and spins trying to run the DDL, stopping only when it succeeds. This
seems to work most of the time.
Does anyone have a script for doing the above that they would like to
share?
Please don 't tell me to just use dbms_redefinition. That is
unnecessarily complex when the above technique can be used instead.
Thanks
--
Jeremiah Wilton
http://www.speakeasy.net/~jwilton
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
To unsubscribe send email to: oracle-l-request@(protected)
put 'unsubscribe ' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- --