event_log shows "error getting obj# for SHAREPLEX_CONFIG table due to ORA-00942"
Shareplex for Oracle event_log shows the following error. 01/01/01 11:11 Error: sp_ocap(osp) (for o.<SID>S queue o.<SID>) 12010 - error getting obj# for SHAREPLEX_CONFIG table due to ORA-00942: table or view does not exist. 01/01/01 11:11 Process exited sp_ocap (for o.<SID> queue o.<SID) [pid = 9212] - exit(1)
This is caused by the Oracle init.ora parameter O7_DICTIONARY_ACCESSIBILITY that was introduced in oracle 8. This parameter adds a level of security to oracle by not allowing users other than SYS access to SYSs objects. Since the meaning of this parameter has changed in different versions of oracle, it cant be stated whether the parameter needs to be "TRUE" or "FALSE" for your version of Oracle. A quick simple test is to try to access a SYS object with the shareplex "splex" user.
sqlplus splex/splex desc sys.type$ if this query comes back with a description of the table this parameter is not blocking assess to the SYS schema. If an error is returned and you get an ORA-00942 error when trying to select out of this table then the parameter is blocking access to the SYS objects.
Either change the O7_DICTIONARY_ACCESSIBILITY to the opposite that is currently in the init.ora and bounce the database. The change can be verified by selecting from a SYS table as the splex user.
or If this parameter is set and you need to access objects in the SYS schema, then you must be granted explicit object privilege. See below script to grant direct access to the SYS objects for the splex user. The script below assumes the shareplex schema is called splex connect sys spool foo.sql select grant select on ||table_name|| to splex; from dba_tables where owner=SYS; spool off @ foo.sql to verify fix login as splex and select from a SYS table "select * from sys.type$;"