I added a function, content_revision.revision_name(), to acs-content-repository a few days ago. Over the course of this work I kept finding that the content_item package was invalid, but I thought it was just the result of my work.
Now, however, I'm finding that it seems to come and go. Earlier today I did something in bug-tracker and got the error, so I ran the packages-create.sql script from acs-content-repository. This recreates all those packages, and it fixed the problem.
An hour or so later I was back in bug-tracker and got it again. No-one else works on this site so I know for sure there were no code changes to those packages. This time I hit the back button and re-submitted - no error this time. This is really funky! I've never seen an invalid package just "fix" itself, and I don't know if it means I have an Oracle problem or what.
This is Oracle 8.1.7.4 running on RedHat Advanced Server, which is based on RH 7.2. The exact error message follows. Does anyone have any clues as to what problem would cause this behavior?
ora8.c:3568:ora_tcl_command: error in `OCIStmtExecute ()': ORA-04068: existing state of packages has been discarded
ORA-04061: existing state of package "BP_STAGING.CONTENT_ITEM" has been invalidated
ORA-04065: not executed, altered or dropped package "BP_STAGING.CONTENT_ITEM"
ORA-06508: PL/SQL: could not find program unit being called
ORA-06512: at "BP_STAGING.CONTENT_REVISION", line 25
ORA-06512: at "BP_STAGING.CONTENT_REVISION", line 69
ORA-06512: at "BP_STAGING.BT_BUG_REVISION", line 22
ORA-06512: at line 3
SQL:
begin
:1 := bt_bug_revision.new (
bug_revision_id => null,
bug_id => :bug_id,
component_id => :component_id,
found_in_version => :found_in_version,
fix_for_version => :fix_for_version,
fixed_in_version => :fixed_in_version,
resolution => :resolution,
user_agent => :user_agent,
summary => :summary,
creation_date => sysdate,
creation_user => :creation_user,
creation_ip => :creation_ip
);
end;