Posts tagged ora-04068
Reduce occurrence of ORA-04068 while upgrading PL/SQL packages by moving global variables to Application Context0
This article will argue against the use of (stateful) global PL/SQL variables – as they are both a potential problem for stateless web applications and the availability experienced by end users during database upgrades.
In various database releases, Oracle did a lot of work in supporting online redefinition of database objects, striving to a reduction of the impact of changes both in terms of unavailability (through locks) and invalidation of dependent objects. When a table is redefined online, it is accessible to both queries and DML during much of the redefinition process. The table is locked in the exclusive mode only during a very small window that is independent of the size of the table and complexity of the redefinition, and that is completely transparent to users. Through fine grained dependency tracking, the number of occasions on which dependent objects are rendered invalid is reduced to those situations where it is really justified. In database releases prior to 11g, object dependencies were managed at the object level, so altering an object automatically invalidated all dependent objects. Oracle 11g has more granular dependency management, so only changes that directly More >