Home » RDBMS Server » Server Administration » Error - PL/SQL cannot understand the stored format of a library unit (Oracle 9.2.0.6.0)
Error - PL/SQL cannot understand the stored format of a library unit [message #436619] Thu, 24 December 2009 09:13 Go to next message
chetanaZ
Messages: 132
Registered: October 2009
Location: UK
Senior Member
Hi,

I have installed Oracle software 9201 on windows
then upgraded to 9.2.0.6.0 using patch 3948480
Afterwards applied patch 4015165

However while running REPCA it is getting aborted with following Error
Portal.log
ERROR: Recompiling the invalid objects.ORA-04047: object specified is incompatible with the flag specified
ORA-06512: at "SYS.DBMS_UTILITY", line 114
ORA-06512: at "SYS.DBMS_DDL", line 86
ORA-06512: at line 1

repca.log
[CustomExternalProcessAction] Action failed due to: oracle.ifs.utils.action.ActionFailedException: Some of the operations have failed during this OracleAS RepCA session. Please see the log file at e:\repca_home\assistants\repca\log\repca_2009-12-24_01-43-52_PM.log for further details.
ERROR - Some of the operations have failed during this OracleAS RepCA session. Please see the log file at e:\repca_home\assistants\repca\log\repca_2009-12-24_01-43-52_PM.log for further details.
oracle.ifs.utils.action.ActionFailedException: Some of the operations have failed during this OracleAS RepCA session. Please see the log file at e:\repca_home\assistants\repca\log\repca_2009-12-24_01-43-52_PM.log for further details.
	at oracle.ias.repca.actions.CustomExternalProcessAction.perform(CustomExternalProcessAction.java:153)
	at oracle.ifs.utils.action.ActionQueue.performActions(ActionQueue.java:303)
	at oracle.ifs.utils.action.ActionQueue.run(ActionQueue.java:229)


I checked the Invalid objects and found the following objects pertaining to 'Oracle Text' and 'Oracle Ultra Search' are Invalid

SQL> select object_name,object_type,owner from dba_objEcts where status='INVALID';

OBJECT_NAME          OBJECT_TYPE          OWNER
-------------------- -------------------- ------------------------------
WWSBR_CORNER_CTX_48  PROCEDURE            CTXSYS
WWSBR_CORNER_CTX_63  PROCEDURE            CTXSYS
WWSBR_PERSP_CTX_48   PROCEDURE            CTXSYS
WWSBR_PERSP_CTX_63   PROCEDURE            CTXSYS
WWSBR_THING_CTX_48   PROCEDURE            CTXSYS
WWSBR_THING_CTX_63   PROCEDURE            CTXSYS
WWSBR_TOPIC_CTX_48   PROCEDURE            CTXSYS
WWSBR_TOPIC_CTX_63   PROCEDURE            CTXSYS
OUS_ADM              PACKAGE BODY         WKSYS
WKDS_ADM             PACKAGE BODY         WKSYS
WK_ACL               PACKAGE BODY         WKSYS
WK_ADM               PACKAGE BODY         WKSYS
WK_CRW               PACKAGE BODY         WKSYS
WK_DDL               PACKAGE BODY         WKSYS
WK_ERR               PACKAGE BODY         WKSYS
WK_JOB               PACKAGE BODY         WKSYS
WK_LDAP              PACKAGE BODY         WKSYS
WK_META              PACKAGE BODY         WKSYS
WK_PORTAL            PACKAGE BODY         WKSYS
WK_QRY               PACKAGE              WKSYS
WK_QRY               PACKAGE BODY         WKSYS
WK_QUERYAPI          PACKAGE BODY         WKSYS
WK_QUERYEXP          PACKAGE BODY         WKSYS
WK_QUERY_ADM         PACKAGE BODY         WKSYS
WK_QUTIL             PACKAGE BODY         WKSYS
WK_SGP               PACKAGE BODY         WKSYS
WK_SNAPSHOT          PACKAGE BODY         WKSYS
WK_UTIL              PACKAGE BODY         WKSYS

28 rows selected.


While I am trying to compile these objects with utlrp as well as validate_wk, I am getting error below
PLS-00908: The stored format of WK_SNAPSHOT is not supported by
this release
PLS-00707: unsupported construct or internal error [2702]


I googled it and found following

Cause
PL/SQL cannot understand the stored format of a library unit. It has been compiled or shrink-wrapped with a version of PL/SQL either too new or too old for this version to understand it.

Action
Recompile the library unit for this version of PL/SQL


Now How do I compile these objects?and which library I will use?
Initially I though it might an upgrade issue but following results are not showing that.

SQL> select comp_id,comp_name,version,status,schema from dba_registry;

COMP_ID                        COMP_NAME                                          VERSION                STATUS      SCHEMA
------------------------------ -------------------------------------------------- ------------------------------ -----------
---------------------------
CATALOG                        Oracle9i Catalog Views                             9.2.0.6.0              VALID       SYS
CATPROC                        Oracle9i Packages and Types                        9.2.0.6.0              VALID       SYS
JAVAVM                         JServer JAVA Virtual Machine                       9.2.0.6.0              VALID       SYS
XML                            Oracle XDK for Java                                9.2.0.8.0              VALID       SYS
CATJAVA                        Oracle9i Java Packages                             9.2.0.6.0              VALID       SYS
CONTEXT                        Oracle Text                                        9.2.0.6.0              VALID       CTXSYS
WK                             Oracle Ultra Search                                9.2.0.6.0              INVALID     WKSYS


Please help me on this

Thanks and Regards,
Chetana
Re: Error - PL/SQL cannot understand the stored format of a library unit [message #436620 is a reply to message #436619] Thu, 24 December 2009 09:24 Go to previous messageGo to next message
BlackSwan
Messages: 24905
Registered: January 2009
Senior Member
SQL> ALTER PACKAGE <package_name> COMPILE;
Re: Error - PL/SQL cannot understand the stored format of a library unit [message #436621 is a reply to message #436619] Thu, 24 December 2009 09:30 Go to previous messageGo to next message
chetanaZ
Messages: 132
Registered: October 2009
Location: UK
Senior Member
Hi Blackswan

Thanks for your reply

I already tried that

Following are the results

I tried recompiling package specification as well even when though only package body was invalid. But no luck!

SQL> select 'alter package '|| object_name || ' COMPILE BODY;' from user_objEcts where status='INVALID';

'ALTERPACKAGE'||OBJECT_NAME||'COMPILEBODY;'
--------------------------------------------------------------------------------
alter package OUS_ADM COMPILE BODY;
alter package WKDS_ADM COMPILE BODY;
alter package WK_ACL COMPILE BODY;
alter package WK_ADM COMPILE BODY;
alter package WK_CRW COMPILE BODY;
alter package WK_DDL COMPILE BODY;
alter package WK_ERR COMPILE BODY;
alter package WK_JOB COMPILE BODY;
alter package WK_LDAP COMPILE BODY;
alter package WK_META COMPILE BODY;
alter package WK_PORTAL COMPILE BODY;
alter package WK_QRY COMPILE BODY;
alter package WK_QRY COMPILE BODY;
alter package WK_QUERYAPI COMPILE BODY;
alter package WK_QUERYEXP COMPILE BODY;
alter package WK_QUERY_ADM COMPILE BODY;
alter package WK_QUTIL COMPILE BODY;
alter package WK_SGP COMPILE BODY;
alter package WK_SNAPSHOT COMPILE BODY;
alter package WK_UTIL COMPILE BODY;

20 rows selected.

SQL> alter package WK_SNAPSHOT COMPILE BODY;

Warning: Package Body altered with compilation errors.

SQL> show err
Errors for PACKAGE BODY WK_SNAPSHOT:

LINE/COL ERROR
-------- -----------------------------------------------------------------
0/0      PLS-00908: The stored format of WK_SNAPSHOT is not supported by
         this release

21/7     PLS-00707: unsupported construct or internal error [2702]
SQL>


Thanks and Regards,
Chetana
Re: Error - PL/SQL cannot understand the stored format of a library unit [message #436622 is a reply to message #436621] Thu, 24 December 2009 09:37 Go to previous messageGo to next message
BlackSwan
Messages: 24905
Registered: January 2009
Senior Member
GOOGLE returns following


Search Results

Results include your SearchWiki notes for oracle The stored format of WK_SNAPSHOT is not supported by this release. Share these notes
Copy and paste this link into an email or IM:

See a preview of the shared page
1.
Oracle Ultra Search
For example, the AL32UTF8 character set is not supported. ... When using Oracle 9.2.0.4, this bug prevents ACLs stored in the XDB .... Section 13.3.4, "Section 2.5.4 - Installing the Middle Tier with the Oracle Application Server Release"
Re: Error - PL/SQL cannot understand the stored format of a library unit [message #436623 is a reply to message #436619] Thu, 24 December 2009 09:46 Go to previous messageGo to next message
chetanaZ
Messages: 132
Registered: October 2009
Location: UK
Senior Member
Hi Blackswan

Even this case differs

Please refer following output

SQL> select * from nls_database_parameters;

PARAMETER                      VALUE
------------------------------ ----------------------------------------
NLS_LANGUAGE                   AMERICAN
NLS_TERRITORY                  AMERICA
NLS_CURRENCY                   $
NLS_ISO_CURRENCY               AMERICA
NLS_NUMERIC_CHARACTERS         .,
NLS_CHARACTERSET               WE8ISO8859P1
NLS_CALENDAR                   GREGORIAN
NLS_DATE_FORMAT                DD-MON-RR
NLS_DATE_LANGUAGE              AMERICAN
NLS_SORT                       BINARY
NLS_TIME_FORMAT                HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT           DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT             HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT        DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY              $
NLS_COMP                       BINARY
NLS_LENGTH_SEMANTICS           BYTE
NLS_NCHAR_CONV_EXCP            FALSE
NLS_NCHAR_CHARACTERSET         AL16UTF16
NLS_RDBMS_VERSION              9.2.0.6.0

20 rows selected.



Thanks and Regards,
Chetana
Re: Error - PL/SQL cannot understand the stored format of a library unit [message #436625 is a reply to message #436623] Thu, 24 December 2009 10:09 Go to previous message
BlackSwan
Messages: 24905
Registered: January 2009
Senior Member
This is one of the prices to be paid when running unsupported & obsoleted software.
Previous Topic: upgrade from oracle 10.2 to 11.2 linux version features
Next Topic: deleted datafile
Goto Forum:
  


Current Time: Mon Sep 26 05:54:58 CDT 2016

Total time taken to generate the page: 0.13116 seconds