ORA-04068:
existing state of packages string
has been discarded
Cause: One of errors 4060 - 4067 when
attempt to execute a stored procedure.
Action: Try again after proper
re-initialization of any application's
state.
ORA-04068 can be
caused by a variety of initiating
events.
In some cases with RAC, the ORA-04068
error can be suppressed with this
command:
alter system set "_disable_fast_validate"=true
scope=both;
If a remote dependent object has
been altered through a DDL statement
then invoking the procedure/package can
result ORA-04068: existing state of
packages has been discarded . voking the procedure can then cause
the ORA-04068.
SQL expert Laurent Schneider
has noted that
pragma SERIALLY_REUSABLE
can be used in some situations to avoid
the ORA-04068. Pragma
SERIALLY_REUSABLE is an indication that
the package state is needed only for one
call to the server, but having a
particular package state for that one
call can help avoid ORA-04068.