Problem solve Get help with specific problems with your technologies, process and projects.

Resolving the ORA-06508 error

I am encountering frequent Oracle errors that are generated from a trigger as follows:
 ORA-06508: PL/SQL: could not find program unit being called
All database objects are compiled, and the program unit that 'cannot be found' exists on the same database as a public procedure in a package. The problem is intermittent, and if I exit the calling application (32-bit Windows app) and start it again, then the problem no longer exists for some amount of time... Can you shed some light on this?

There are a couple of problems that could be causing the ORA-6508 error. Normally, this error message is issued...

in conjunction with other error messages. So try to find out if you have other error messages. This can lead you to your solution.

Another cause is that your package or procedure needs a dependant object which has become invalid. Compiling the dependent object and this object can fix the problem. DDL statements against the dependent object are the leading cause of the INVALID status.

Just to clarify, make sure that you specify the object in question with the SCHEMA-DOT notation, i.e. preceed the object name with "username.".

For More Information

Dig Deeper on Oracle database design and architecture