Oracle 12c R2 Error Codes and Solution Suggestions from ORA-00000 to ORA-00100
- ORA-00000: normal, successful completion
Cause: Normal exit.
Action: None
Cause: An UPDATE or INSERT statement attempted to insert a duplicate key. For Trusted Oracle configured in DBMS MAC mode, you may see this message if a duplicate entry exists at a different level.
Action: Either remove the unique restriction or do not insert the key.
Cause: The current session was requested to set a trace event by another session.
Action: This is used internally; no action is required.
Cause: All session state objects are in use.
Action: Increase the value of the SESSIONS initialization parameter.
Cause: All licenses are in use.
Action: Increase the value of the LICENSE MAX SESSIONS initialization parameter.
Cause: All process state objects are in use.
Action: Increase the value of the PROCESSES initialization parameter.
Cause: The user session is currently used by others.
Action: Do not switch to a session attached to some other process.
Cause: Either the session specified does not exist or the caller does not have the privilege to access it.
Action: Specify a valid session ID that you have privilege to access, that is either you own it or you have the CHANGE_USER privilege.
Cause: An attempt was made to detach the current session when it contains references to process private memory.
Action: A session may contain references to process memory (PGA) if it has an open network connection, a very large context area, or operating system privileges. To allow the detach, it may be necessary to close the session’s database links and/or cursors. Detaching a session with operating system privileges is always disallowed.
Cause: Trying to login more than once from different processes for ORACLE started in single-process mode.
Action: Logoff from the other process.
Cause: Out of memory.
Action: Restart with larger sga heap.
Cause: Missing or invalid session ID string for the current operation.
Action: Retry with a valid session ID.
Cause: Attempted to use ALTER SYSTEM KILL SESSION to kill the current session.
Action: None
Cause: A privileged user has killed your session and you are no longer logged on to the database.
Action: Login again if you wish to continue working.
Cause: The session ID specified in the current operation was not a user session (for example, recursive, etc.).
Action: Retry with a user session ID.
Cause: The user session ID no longer exists, probably because the session was logged out.
Action: Use a valid session ID.
Cause: The session specified in an ALTER SYSTEM KILL SESSION command cannot be killed immediately (because it is rolling back or blocked on a network operation), but it has been marked for kill. This means it will be killed as soon as possible after its current uninterruptable operation is done.
Action: No action is required for the session to be killed, but further executions of the ALTER SYSTEM KILL SESSION command on this session may cause the session to be killed sooner.
Cause: The session migration password specified in a session creation call was invalid (probably too long).
Action: Retry with a valid password (less than 30 chars).
Cause: An attempt was made to detach or clone the current session and it has an empty migration password. This is not allowed.
Action: Create the session with a non-empty migration password.
Cause: An attempt was made to issue a commit or rollback from a PL/SQL object (procedure, function, package) in a session that has this disabled (by ‘alter session disable commit in procedure’)
Action: Enable commits from PL/SQL in this session, or do not attempt to use commit or rollback in PL/SQL when they are disabled in the current session.
- ORA-00035: LICENSE_MAX_USERS cannot be less than current number of users
- ORA-00036: maximum number of recursive SQL levels (string) exceeded
Cause: An attempt was made to go more than the specified number of recursive SQL levels.
Action: Remove the recursive SQL, possibly a recursive trigger.
Cause: An attempt was made to switch to a session in a different server group. This is not allowed.
Action: Make sure the server switches to a session that belongs to its server group.
Cause: An attempt was made to create a non-migratable session in a server group that is owned by a different user.
Action: A server group is owned by the first user who logs into a server in the server group in non-migratable mode. All subsequent non-migratable mode logins must be made by the user who owns the server group. To have a different user login in non-migratable mode, the ownership of the server group will have to be changed. This can be done by logging off all current sessions and detaching from all existing servers in the server group and then having the new user login to become the new owner.
Cause: An unexpected error occurred while executing a periodically invoked action.
Action: Check the error stack for detailed error information.
Cause: The Resource Manager SWITCH_TIME limit was exceeded.
Action: Reduce the complexity of the update or query, or contact your database administrator for more information.
Cause: The Resource Manager SWITCH_TIME limit was exceeded.
Action: Reduce the complexity of the update or query, or contact your database administrator for more information.
Cause: An attempt was made to use an invalid application service.
Action: Use a valid service name from SERVICE$ or add a new service using the DBMS_SERVICE package.
Cause: Execution of the inter-instance operation failed.
Action: Check the status of the target instance. The operation may have partially executed. Verify the result of the intended operation.
Cause: The user attempted to set timed_statistics to FALSE when statistics_level was not BASIC. timed_statistics is required to be TRUE to collect meaningful statistics when statistics_level is set to TYPICAL or ALL.
Action: Either set timed_statistics to TRUE or set statistics_level to BASIC.
Cause: A privileged user terminated your session and you were no longer logged on to the database. Your session will not be replayed by Application Continuity or Transparent Application Failover (TAF).
Action: Log in again if you wish to continue working.
Cause: An attempt was made to alter the sessions parameter in the root container or non-consolidated database.
Action: The sessions parameter behaves like a static parameter in root containers and non-consolidated databases and hence cannot be altered. It can only be altered from a pluggable database.
Cause: An attempt was made to alter the sessions parameter to a value greater than the root container’s session value.
Action: The sessions parameter can only be set to a value less than or equal to the root container’s session value.
Cause: Could not obtain the operating system resources necessary to cover an oracle enqueue. This is normally the result of an operating system user quota that is too low.
Action: Look up the operating system error in your system documentation and perform the needed action.
Cause: Usually due to a dead instance.
Action: Check for any dead, unrecovered instances and recover them.
Cause: Ran out of enqueue resources.
Action: Increase the value of the ENQUEUE_RESOURCES initialization parameter.
Cause: Ran out of enqueue state objects.
Action: Increase the value of the ENQUEUES initialization parameter.
Cause: Interested resource is busy.
Action: Retry if necessary or increase timeout.
Cause: Ran out of DML lock state objects.
Action: Increase the value of the DML_LOCKS initialization parameter and warm start.
Cause: An attempt was made to acquire a DDL lock that is already locked.
Action: This happens if you attempt to drop a table that has parse locks on it.
Cause: The number of temporary tables equals or exceeds the number of temporary table locks. Temporary tables are often created by large sorts.
Action: Increase the value of the TEMPORARY_TABLE_LOCKS initialization parameter and warm start.
Cause: DB_BLOCK_SIZE initialization parameter is wrong for the database being mounted. It does not match the value used to create the database.
Action: Fix the value of the DB_BLOCK_SIZE parameter or mount a database that matches the value.
Cause: The value of the DB_FILES initialization parameter was exceeded.
Action: Increase the value of the DB_FILES parameter and warm start.
Cause: Transactions deadlocked one another while waiting for resources.
Action: Look at the trace file to see the transactions and resources involved. Retry if necessary.
Cause: The shared instance being started is using DML locks, and the running instances are not, or vice-versa.
Action: Ensure that all instances’ INIT.ORA files specify the DML_LOCKS parameter as 0 or all as non-zero.
Cause: The instance was started with DML_LOCKS = 0, and the statement being executed needs a full-table lock (S, X, or SSX).
Action: Restart the instance with DML_LOCKS not equal to zero, and reexecute the statement.
Cause: The number of log files specificied exceeded the maximum number of log files supported in this release.
Action: Re-create the control file with the highest number of log files no greater than the maximum supported in this release.
Cause: An initialization parameter was set to a value that required allocating more contiguous space than can be allocated on this operating system.
Action: Reduce the value of the initialization parameter.
Cause: The FIXED_DATE string was not in date format yyyy-mm-dd:hh24:mi:ss.
Action: Make sure the initialization parameter is in the correct date format.
Cause: The specified SID contained an illegal character or the SID specified was too long, which cannot occur in an SPFILE setting. Illegal characters include ,#”‘=() and whitespace.
Action: Use a SID that does not contain a special character or whitespace. Check platform specific documentation for the maximum length of SID.
Cause: The value for the initialization parameter is invalid.
Action: Choose a value as indicated by the message.
Cause: The value for the initialization parameter is invalid.
Action: Choose a value as indicated by the message.
Cause: A command was issued that tried to lock the table indicated in the message. Examples of commands that can lock tables are: LOCK TABLE, ALTER TABLE … ADD (…), and so on.
Action: Use the ALTER TABLE … ENABLE TABLE LOCK command, and retry the command.
Cause: An invalid debugger command was specified.
Action: Type HELP to see the list of available commands.
Cause: An invalid process number was specified.
Action: Specify a valid process number.
Cause: An invalid process was specified.
Action: Specify a valid process.
Cause: An incorrect number of arguments was specified.
Action: Specify the correct number of arguments. Type HELP to see the list of commands and their syntax.
Cause: No debug process has been specified.
Action: Specify a valid process.
Cause: The specified process was not logged on to the current instance.
Action: Specify a valid process.
Cause: An attempt was made to invoke a dump that does not exist.
Action: Type DUMPLIST to see the list of available dumps.
Cause: An attempt was made to invoke an invalid dump.
Action: Try another dump.
Cause: An attempt was made to dump a variable by name on a system that does not support this feature.
Action: Try the PEEK command.
Cause: An attempt was made to dump a variable that does not exist.
Action: Use a valid variable name.
Cause: An attempt was made to dump an invalid global area.
Action: Use level 1 for the PGA, 2 for the SGA, and 3 for the UGA. Use <extra + level> to dump global area level as well as extra bytes for every pointer; extra must be a multiple of 4.
Cause: An attempt was made to read/write an invalid memory address range.
Action: Try another address or length.
Cause: An invalid length was specified for the POKE command.
Action: Use a valid length (either 1, 2, 4, or possibly 8).
Cause: Even though there may be SGA corruptions, the SGA was mapped.
Action: Use the DUMPSGA command to dump the SGA.
Cause: An attempt was made to dump an invalid global area.
Action: Specify either PGA, SGA, or UGA.
Cause: An invalid attempt was made to dump the current call heap.
Action: Wait until the process starts a call.
Cause: An invalid attempt was made to dump the user call heap.
Action: Wait until the process starts a call.
Cause: Cluster database command issued for non cluster database ORADEBUG command.
Action: Issue the command without the cluster database syntax.
Cause: Debug command issued on shared server.
Action: Reissue the command using a dedicated server.
Cause: An invalid instance number was specified in a cluster database ORADEBUG command.
Action: Reissue the command with valid instance numbers.
Cause: Could not allocate memory needed to execute cluster database oradebug.
Action: Reissue the command on each instance with single-instance oradebug.
Cause: The value of LARGE_POOL_SIZE is below the minimum size.
Action: Increase the value of LARGE_POOL_SIZE past the minimum size.
Cause: The value of LARGE_POOL_SIZE is less than the value of LARGE_POOL_MIN_ALLOC.
Action: Increase the value of LARGE_POOL_SIZE past the value of LARGE_POOL_MIN_ALLOC.
Cause: The parameter value is not in a valid range.
Action: Modify the parameter value to be within the specified range.
Cause: The parameter value is not an integer.
Action: Modify the parameter value to be an integer.
Cause: The value for the initialization parameter is invalid.
Action: Choose a value as indicated by the message.
Cause: Usage of Oracle’s SQL extensions.
Action: n/a
Cause: An attempt was made to create or mount the database when the instance was started without a parameter file.
Action: Restart the instance with a parameter file.
Cause: Even though no parameter file was specified, the instance was started with all default values.
Action: None
Cause: An application made reference to unknown or inaccessible data.
Action: Handle this condition within the application or make appropriate modifications to the application code. NOTE: If the application uses Oracle-mode SQL instead of ANSI-mode SQL, ORA-01403 will be generated instead of ORA-00100.