ORA-04063

Error: ORA-04063

OEM Error when assigning an email id to SYS user:

Internal error. ORA-04063: package body "SYSMAN.EMD_NOTIFICATION" has errors
ORA-06508: PL/SQL: could not find program unit being called:
 "SYSMAN.EMD_NOTIFICATION"
ORA-06512: at "SYSMAN.MGMT_PREFERENCES", line 1536 ORA-06512: at line 1

Cause:

Oracle policy recommends taking away the execute privilege on UTL_SMTP from PUBLIC. This takes away the privileges from SYSMAN as well. SYSMAN needs execute on UTL_SMTP and UTL_TCP to send notifications.

Workaround:

1. Log into the repository database as sys:

grant execute on sys.utl_smtp to sysman;
grant execute on sys.utl_tcp to sysman;

2. Compile:

alter package sysman.emd_notification compile;

References:

Oracle error: “data got committed in another/same session, cannot update row.”

Oracle error: “data got committed in another/same session, cannot update row.”

When this error continued to pop up, the only solution that worked for me was this from OTN Discussion Forums:

Just a heads up, if you really need to get that column updated:
1. Copy and edit the value to a safe place such as notepad or another 
 sql developer worksheet, don't try to save in the table.
2. In a sql developer worksheet, make an update query to set the 
 BLOB/CLOB field to NULL
3. Run the update query and commit
4. refresh your table view, the BLOB/CLOB should be NULL now
5. Copy the value back in and commit
This worked very well for me but it must be done in the same sql developer 
instance that is throwing the error. I tried to have a coworker null the 
field and it did not affect my session at all even after refreshing the 
table. Also my coworker's sql developer showed the field to be NULL even 
before I asked them to try to edit it.

Source

DRG-10700

Error:

Error DRG-10700: preference does not exist: CTXSYS.DEFAULT_LEXER

Reason:

This error indicates that you do not have any preferences installed. When installing the Oracle® server software, the InterMedia should get installed automatically with the default preferences. These are dependent on the operating system language. You can install the French preference if the language of your Oracle server is French, or the English one if the language of your Oracle server is English.

Action:

Install the appropriate language-specific default preferences. There are scripts in …/ctx/admin/defaults which create language-specific default preferences. They are named in the form of drdefXX.sql, where XX is the language code (from the Server Reference Manual).

To install the US defaults, for instance:

sqlplus ctxsys/<password> @defaults/drdefus.sql

To install the French defaults, for instance:

sqlplus ctxsys/<password> @defaults/drdeffrc.sql

Grant ‘all privileges’ to ctxsys within Oracle.

After these steps, the InterMedia Context server should start.

Source

ORA-01552

Oracle Error :: ORA-01552: cannot use system rollback segment for non-system tablespace ‘CRM’

Possible Reason and Action:
Undo tablespace is missing – Recreate the undo tablespace
Undo tablespace size is full – Create new undo tablespace and make it default
Undo tablespace datafile offline – Make it online

SQL> SELECT TABLESPACE_NAME, STATUS FROM DBA_TABLESPACES;

TABLESPACE_NAME STATUS
———————————- ————-
SYSTEM ONLINE
SYSAUX ONLINE
UNDOTBS ONLINE
TEMP ONLINE
CRM ONLINE

Check V$DATAFILE:

SQL> SELECT FILE#, STATUS FROM V$DATAFILE;

FILE# STATUS
——— ————
1 SYSTEM
2 ONLINE
3 ONLINE
4 ONLINE

If any datafile is OFFLINE, bring it ONLINE. Eg:

SQL> ALTER DATABASE DATAFILE ‘D:CRMDATAUNDOTBS.DBF’ ONLINE;

Database altered.

SQL> commit;

Commit complete.

SQL> SHOW PARAMETER UNDO

NAME TYPE VALUE
——————————– ———– ——————
undo_management string AUTO
undo_retention integer 900
undo_tablespace string UNDOTBS

If undo_management parameter isn’t auto, set it to auto in parameter file and restart database.