This chapter describes important last-minute features and changes not included in Oracle Database Documentation Library for Oracle Database 12c Release 1 (12.1.0.1).
This chapter contains the following sections:
Section 3.1, "Compatibility, Upgrading, Downgrading, and Installation"
Section 3.2, "Features Not Available or Restricted in Oracle Database 12.1.0.1"
Section 3.3, "Database Security"
Section 3.4, "Deprecated and Desupported Features for Oracle Database 12c"
Section 3.5, "Default Behavior Changes"
Section 3.6, "Oracle Automatic Storage Management (Oracle ASM)"
Section 3.7, "Oracle Application Express"
Section 3.8, "Oracle Data Mining"
Section 3.9, "Oracle Database Vault"
Section 3.10, "Oracle Enterprise Manager"
Section 3.11, "Oracle Exadata Database Machine and SPARC SuperCluster"
Section 3.12, "Oracle Grid Infrastructure for a Cluster"
Section 3.13, "Oracle Multimedia"
Section 3.14, "Oracle ODBC Driver"
Section 3.15, "Oracle SQL Developer"
Section 3.17, "Oracle Warehouse Builder"
Section 3.22, "Summary Management"
Section 3.23, "Transparent Data Encryption"
For late-breaking updates and best practices about pre-upgrade, post-upgrade, compatibility, and interoperability discussions, see Note 1462240.1 on My Oracle Support (at https://support.oracle.com
) that links to the "Upgrade Companion" web site.
Caution:
After installation is complete, do not manually remove or runcron
jobs that remove /tmp/.oracle
or /var/tmp/.oracle
directories or their files while Oracle software is running. If you remove these files, then Oracle software can encounter intermittent hangs. Oracle Grid Infrastructure for a cluster and Oracle Restart installations fail with the following error:
CRS-0184: Cannot communicate with the CRS daemon.
Caution:
You must use the installation media from the same release to remove Oracle software. Do not use the installation media from a later release to remove Oracle software from an earlier release. For example, do not run the deinstall from the 12.1.0.1 installation media to remove Oracle software from an existing 11.2.0.4 Oracle home.
After upgrading to Oracle Database 12c Release 1 (12.1.0.1), the optimizer generates suboptimal plans for CHAR
or NCHAR
data type columns that have histogram statistics and when the OPTIMIZER_FEATURES_ENABLE
parameter is set to a value of 11.2.0.4
or higher. 12.1.0.1
is the default value for the OPTIMIZER_FEATURES_ENABLE
parameter in Oracle Database 12c Release 1 (12.1.0.1).
One workaround for this issue is to apply the patch for bug 18255105. For CHAR
or NCHAR
data type columns that have histogram statistics, this patch marks them as stale. This patch also helps if you are using automatic statistics gathering or if you are using manual statistics gathering (with either the GATHER AUTO
or GATHER STALE
option) to gather statistics on the problematic tables.
Another workaround is to find the tables that have CHAR
or NCHAR
data type columns that have histogram statistics (using the DBA_TAB_COL_STATISTICS
view) and execute the GATHER_TABLE_STATS
procedure on the tables. Instead of using the GATHER_TABLE_STATS
procedure on the production system, gather statistics on a test system, export the statistics to a user statistics table, and then import the statistics into the production system. This workaround eliminates the need for the patch for bug 18255105.
When you collect statistics, set the NO_INVALIDATE
parameter to FALSE
so that the existing cursors (with suboptimal plans) are not shared when SQL statements are executed again.
Gathering statistics for tables that have all of the following scenarios can also cause suboptimal plans:
The tables have CHAR
or NCHAR
data type columns.
The OPTIMIZER_FEATURES_ENABLE
parameter is set to a value of 11.2.0.4
or higher.
The tables have histograms.
Later, you change the OPTIMIZER_FEATURES_ENABLE
parameter value to less than 11.2.0.4
(for example, you downgraded Oracle Database and set the OPTIMIZER_FEATURES_ENABLE
parameter to a smaller value).
In this scenario, you need to regather the statistics for those tables after changing the OPTIMIZER_FEATURES_ENABLE
parameter.
After a downgrade to 11.2.0.4 from 12.1.0.1, the status of the simple spatial (SDO) network component in DBA_REGISTRY
and the following two spatial objects are invalid (reference Bug 16757980):
Function MDSYS.SDO_OWM_INSTALLED
Public Synonym SDO_OWM_INSTALLED
In 12.1.0.1, after executing the downgrade (that is, @catdwgrd.sql
), drop the invalid spatial objects using the following commands:
drop function mdsys.SDO_OWM_INSTALLED; drop public synonym SDO_OWM_INSTALLED;
Then, follow the steps for @catrelod.sql
and @utlrp
.
The pre-upgrade tool, preupgrd.sql
, is not able to create a directory to store the output files if the JAVAVM component either does not exist in the database registry or is set to INVALID
or OPTION OFF
. For example:
SQL> @/tmp/preupgrd Loading Pre-Upgrade Package ... WARNING: Failed to open preupgrade.log for write access script will generate terminal output only WARNING: Failed to open preupgrade_fixups.sql for write access script will not generate fixup scripts. Results of the checks are located at: *** Scripts/Logs are not being Generated *** preupgrade.log
The workaround is to manually create the output directory before running preupgrd.sql
by executing the following steps:
If ORACLE_BASE
is defined in the environment settings, either create a directory $ORACLE_BASE/cfgtoollogs/
<db-unique-name>
/preupgrade
or create a directory $ORACLE_HOME/cfgtoollogs/
<db-unique-name>
/preupgrade
.
To get <db-unique-name>
, use the following query:
SELECT value FROM V$PARAMETER WHERE NAME = 'db_unique_name';
Note that <db-unique-name>
used in the directory path is case sensitive.
Rerun the preupgrd.sql
tool.
If the root configuration script is run from a directory for which the user running the script does not have write permission or the file system does not have enough space to create the file containing the exported contents of the Oracle Local Registry, then the script will fail with the following error (reference Bug 16626394):
PROTL-3: Failed to create export file 'OLRUPGRADEFILE' CLSRSC-169: Failed to create or upgrade OLR
To workaround this problem, run the configuration script from a directory to which the installing user has write permission. The file system must also have sufficient space to write the exported file.
In Oracle Database 12c, the Database Upgrade Assistant (DBUA) removes the SEC_CASE_SENSITIVE_LOGON
system parameter during the upgrade process if it exists in the parameter file (reference Bug 16238456).
If the SEC_CASE_SENSITIVE_LOGON
system parameter was set to FALSE
prior to upgrade, then after the upgrade, the SEC_CASE_SENSITIVE_LOGON
system parameter's default value would be set to TRUE
, which means that the correct case would need to be used when logging on.
Set SEC_CASE_SENSITIVE_LOGON
system parameter back to FALSE
in the parameter file after the DBUA upgrade process or log on using the case sensitive version of the password.
In an Oracle Exadata environment, if the database being upgraded has a large number of tablespaces (for example, 64,000) and corresponding data files and if each tablespace has one data file stored on Oracle ASM, when the Database Upgrade Assistant (DBUA) starts up the service it may fail or take a long time to start due to the large number of data files (reference Bug 16738865).
For Global Data Services installation and configuration information, refer to Chapter 2 of the Oracle Database Global Data Services Concepts and Administration Guide, Oracle Database 12c Release 1 (12.1). This book is part number E22100-01.
When downgrading from release Oracle Database 12c to 11.2.0.2, you must apply patch 11811073 for release 11.2.0.2 which provides an updated version of catrelod.sql
. This patch can be applied to the 11.2.0.2 home anytime before attempting to reload the PL/SQL packages from the 11.2.0.2 home by running the catrelod.sql
.
When downgrading from release Oracle Database 12c to 11.2.0.3 or 11.2.0.2 and if SQLJ types are present, the following ORA-00600
error may occur when running utlrp.sql
to recompile invalid objects after catrelod.sql
is run (reference Bug 16230705):
ORA-00600: internal error code, arguments: [16211]
You must apply the fix in the original release (11.2.0.2 or 11.2.0.3) before executing @utlrp.sql
(after @catrelod.sql
) in order to avoid this error.
When a node crash occurs during an upgrade, a -force
upgrade can be performed to upgrade a partial cluster minus the unavailable node (reference Bug 12933798).
After performing a -force
upgrade, the node list of the Grid home in inventory is not in sync with the actual Oracle Grid Infrastructure deployment. The node list still contains the unavailable node. Because the node list in inventory is incorrect, the next upgrade or node addition, and any other Oracle Grid Infrastructure deployment, fails.
After performing a -force
upgrade, manually invoke the following command as a CRS user:
$GRID_HOME/oui/bin/runInstaller -updateNodeList "CLUSTER_NODES={comma_separated_alive_node_list}" ORACLE_HOME=$GRID_HOME CRS=true
When upgrading from release Oracle Database 11g Release 1 (11.1) to Oracle Database 12c, the following error may occur after the installer runs the Cluster Verification Utility (CVU) prerequisite checks:
Verify that default ASM disk discovery string is used - This is a prerequisite check to warn users that permission must be granted to devices so that all ASM devices visible with the pre-Version 12 default discovery string "/dev/raw/*" are also visible with the Version 12 default discovery string "/dev/sd*"
You may ignore this error. However, ensure that the Oracle ASM disks are visible using the default discovery string.
To set the Oracle ASM disk discovery string, use the following SQL statement:
ALTER SYSTEM SET ASM_DISKSTRING=<usr_string> SCOPE-SPFILE;
The following sections discuss components that are not available or are restricted in this release of Oracle Database 12c Release 1 (12.1.0.1).
The following is a list of features that are not available or are restricted for a multitenant container database (CDB) in this release of Oracle Database 12c Release 1 (12.1.0.1):
Database Change Notification
Continuous Query Notification (CQN)
Client Side Cache
Flashback Data Archive (FDA)
Flashback Transaction Query
Flashback Transaction Backout
Heat map
Automatic Data Optimization
Oracle Streams
Database Migration Assistant for Unicode (DMU)
The following is a list of components that are not available or are restricted in this release of Oracle Database 12c Release 1 (12.1):
Interval partitioning is not supported with XMLIndex. XMLIndex only supports range, list and hash partitioning schemes.
Shared servers and Oracle XML DB are not supported for registration with the LISTENER_NETWORKS
initialization parameter (reference Bug 16051343). Use LOCAL_LISTENER
and REMOTE_LISTENER
instead for shared server connections.
Application Continuity does not support Database Resident Connection Pool (DRCP) in Oracle Database 12c (reference Bug 14792095).
In the initial release of Oracle Database 12c, replay is not supported for Application Continuity when using proxy authentication.
Note the following changes in Database Security.
Note:
This affects the security in the connection between the Oracle Clusterware and the mid-tier or JDBC client.JDBC or Oracle Universal Connection Pool's (UCP) Oracle RAC features like Fast Connection Failover (FCF) subscribe to notifications from the Oracle Notification Service (ONS) running on the Oracle RAC nodes. The connections between the ONS server in the database tier and the notification client in the mid-tier are usually not authenticated. It is possible to configure and use SSL certificates to setup the authentication but the steps are not clearly documented.
The workaround is as follows:
Create an Oracle Wallet to store the SSL certificate using the orapki
interface:
cd $ORA_CRS_HOME/opmn/conf
mkdir sslwallet
orapki wallet create -wallet sslwallet -auto_login
When prompted, provide ONS_Wallet
as the password.
orapki wallet add -wallet sslwallet -dn "CN=ons_test,C=US" -keysize 1024 -self_signed -validity 9999 -pwd ONS_Wallet
orapki wallet export -wallet sslwallet -dn "CN=ons_test,C=US" -cert sslwallet/cert.txt -pwd ONS_Wallet
Copy the wallet created in Step c to all other cluster nodes at the same location.
Stop the ONS server on all nodes in the cluster:
srvctl stop nodeapps
Update the ONS configuration file on all nodes in the database tier to specify the location of the wallet created in Step 1:
Open the file ORA_CRS_HOME
/opmn/conf/ons.config
Add the walletfile
parameter to the ons.config
file:
walletfile=
ORA_CRS_HOME
/opmn/conf/sslwallet
Restart the ONS servers with the srvctl
:
srvctl start nodeapps
If you are running a client-side ONS daemon on the mid-tier, there are two possible configurations:
ONS started from OPMN (like in Oracle AS 10.1.3.x) which uses opmn.xml
for its configuration.
ONS started standalone (like using onsctl
), which uses ons.config
for its configuration.
For case (1), refer to the OPMN Administrator's Guide for the Oracle Application Server release. This involves modifying the opmn.xml
file to specify the wallet location.
For case (2), refer to the section titled Configuration of ONS in Appendix B of the Oracle Database JDBC Developer's Guide. The client-side ONS daemon can potentially run of different machines. Copy the wallet created in Step 1 to those client-side machines and specify the path on that client-side machine in the ons.config
file or in the opmn.xml
file.
If you are running remote ONS configuration without a client-side ONS daemon, refer to the "Remote ONS Subscription" subsection of the "Configuring ONS for Fast Connection Failover" subsection of the "Using Fast Connection Failover" section of the "Fast Connection Failover" chapter in the Oracle Database JDBC Developer's Guide. Copy the wallet created in Step 1 to those client-side machines and specify the path on that client-side machine in the ons.config
file or in the opmn.xml
file.
Alternatively, you can specify the following string as the setONSConfiguration
argument:
propertiesfile=location_of_a_Java_properties_file
The Java properties file should contain one or more of the ONS Java properties listed below, but at least the oracle.ons.nodes
property. The values for these Java properties would be similar to those specified in the "Remote ONS Subscription" subsection previously noted in this step:
oracle.ons.nodes oracle.ons.walletfile oracle.ons.walletpassword
An additional access control list (ACL) privilege called JDWP
is required to connect a database session to a JDWP debugger running at a host and port. The privilege can be granted by the database administrator using the following call:
begin dbms_network_acl_admin.append_host_ace( host => '<debugger-host>', lower_port => <JDWP-port>, upper_port => <JDWP-port>, ace => xs$ace_type(privilege_list => xs$name_list('jdwp'), principal_name => '<debugging-user>', principal_type => xs_acl.ptype_db)); end;
The host parameter can be a host name, an IP address, a domain name, or an IP subnet. The lower_port
and upper_port
values can be omitted to allow the connection at any port number. For additional details, refer to the Oracle Database Security Guide.
Oracle Database 12c introduces behavior changes for your database in addition to new features. Changes in behavior include deprecated and desupported initialization parameters, options, syntax, and the deprecation and desupport of features and components. For more information, see the Oracle Database Upgrade Guide.
This section describes some of the differences in behavior between Oracle Database 12c Release 1 (12.1) and previous releases. The majority of the information about upgrading and downgrading is already included in the Oracle Database Upgrade Guide.
The file name for Object Type Translator (OTT) on windows has changed from ott.exe
to ott.bat
. If OTT is invoked inside Windows batch scripts, they may exit immediately after running OTT. To avoid this, OTT has to be invoked, as shown below, in the Windows batch scripts.
call ott <args>
The following sections describe information pertinent to Oracle Automatic Storage Management (Oracle ASM) in Oracle Database 12c Release 1 (12.1).
Oracle ACFS supports all database files and recovery files for Oracle Database 12c Release 1 (12.1) on selected Oracle ACFS platforms. See platform-specific release notes for details. Note however that data files and redo logs are not supported on Oracle ACFS in an Oracle Restart configuration on any platform.
Placing Oracle homes on Oracle ACFS is supported starting with Oracle Database 11g Release 2 (11.2) (reference Bug 10144982). Oracle ACFS can result in unexpected and inconsistent behavior if you attempt to place Oracle homes on Oracle ACFS on database versions prior to 11.2.
To learn more about Oracle Application Express, refer to the Oracle Application Express Release Notes and the Oracle Application Express Installation Guide.
Note the following when working with Oracle Data Mining.
The following Data Mining features are desupported in this release:
Oracle Data Mining Java API
Adaptive Bayes Network (ABN) algorithm
Demo programs that illustrate the Data Mining APIs are installed with Oracle Database Examples. Instructions for installing and configuring the Data Mining demo programs are in the Oracle Data Mining User's Guide.
Oracle Data Mining scoring functions are also available in Oracle Exadata Storage Server software. Scoring capabilities in the storage layer permit very large data sets to be mined quickly, thus further increasing the competitive advantage already gained from Oracle in-database analytics. For information about Oracle Exadata Storage Server software, see http://www.oracle.com/technetwork/server-storage/engineered-systems/exadata/
.
Note the following when working with Oracle Database Vault.
While downgrading an Oracle Database 12c database with Oracle Database Vault installed to 11.2.0.3, the following error is seen (reference Bug 14217829):
ERROR at line 1: ORA-31011: XML parsing failed ORA-19202: Error occurred in XML processing LPX-00222: error received from SAX callback function ORA-00001: unique constraint (DVSYS.REALM_T$_UK1) violated ORA-06512: at "DVSYS.DBMS_MACADM", line 114 ORA-06512: at line 2
This error is expected and can be ignored. It does not affect Oracle Database Vault functionality in any way.
There may be invalid objects in the database after you run the DVSYS.CONFIGURE_DV
procedure to register Oracle Database Vault with a database (reference Bug 7631281).
To work around this problem, take the following steps:
Log into SQL*Plus as a user who has been granted the SYSDBA
administrative privilege. For example:
sqlplus sys as sysdba
Enter password: password
In SQL*Plus, perform the following query to find invalid objects.
SELECT COUNT(*) FROM ALL_OBJECTS WHERE STATUS = 'INVALID';
If there are invalid objects, then run the utlrp.sql
script, which by default is located in the $ORACLE_HOME/rdbms/admin
directory, to recompile the invalid objects.
@?/rdbms/admin/utlrp.sql
If the utlrp.sql
script provides any instructions, follow them, and then run the script again. If the script terminates abnormally without giving any instructions, then run it again.
Note the following supported items for Oracle Enterprise Manager Cloud Control 12c Release 2 (12.1.0.2) or later with Database Plug-in version 12.1.0.3 or later and unsupported items for Oracle Enterprise Manager Grid Control version 10g, 11g, and Oracle Enterprise Manager Cloud Control 12c Release 1 (12.1.0.1) (reference Bug 16605386).
The following are supported for Oracle Enterprise Manager Cloud Control 12c Release 2 (12.1.0.2) or later with Database Plug-in version 12.1.0.3 or later:
The creation of a 12c database using either Database Configuration Assistant (DBCA) or Oracle Universal Installer (OUI).
If a pre-12c database is being monitored by Oracle Enterprise Manager Cloud Control 12c Release 2 (12.1.0.2) or later with Database Plug-in version 12.1.0.3 or later, the database ORACLE_HOME
property will be updated in Enterprise Manager if chosen in the Management Option screen during upgrade using either Database Upgrade Configuration Assistant (DBUA) or Oracle Universal Installer (OUI).
Oracle Enterprise Manager Grid Control version 10g, 11g, and Oracle Enterprise Manager Cloud Control 12c Release 1 (12.1.0.1) do not support the creation of a 12c database using Cloud Control console.
Workaround 1:
Upgrade to Oracle Enterprise Manager to 12c Release 2 (12.1.0.2) or later before creating the database. Provide details of the same in the Management Option screen while creating the database using either the Database Configuration Assistant (DBCA) or Oracle Universal Installer (OUI).
Workaround 2:
Run discovery or manually add the target to Oracle Enterprise Manager after creating the database using the Grid Control or Cloud Control console. Note that if you do not upgrade to Oracle Enterprise Manager to 12c Release 2 (12.1.0.2) and run discovery, you may loose some monitoring features.
Oracle Enterprise Manager Database Control (DB Control) is no longer supported after upgrading a pre-12c database that had DB Control configured to 12c Release 2 (12.1.0.2) or later using either the Database Configuration Assistant (DBCA) or Oracle Universal Installer (OUI).
Workaround:
Use Oracle Enterprise Manager Cloud Control 12c Release 2 (12.1.0.2) or later for future monitoring.
The ORACLE_HOME
variable can no longer be updated after upgrading a pre-12c database that was monitored by Oracle Enterprise Manager Grid Control version 10g, 11g or by Oracle Enterprise Manager Cloud Control 12c Release 1 (12.1.0.1) to 12c Release 2 (12.1.0.2) or later using either the Database Configuration Assistant (DBCA) or Oracle Universal Installer (OUI).
Workaround 1:
Upgrade to Oracle Enterprise Manager Cloud Control 12c Release 2 (12.1.0.2) or later before upgrading the database. Provide details of the same in the Management Option screen while using either the Database Configuration Assistant (DBCA) or Oracle Universal Installer (OUI).
Workaround 2:
Update the ORACLE_HOME
variable of the database and related targets in the Monitoring Configuration using the Grid Control or Cloud Control console.
Take the following steps to modify target properties in Oracle Enterprise Manager Grid Control or Oracle Enterprise Manager Cloud Control:
Go to the Targets page and click All Targets.
Select a target.
Select a menu item, click Target Setup, and then click Monitoring Configuration.
On the Monitoring Configuration page, set the Oracle Home Path to the upgraded Oracle home.
When Cluster Ready Services (CRS) and related targets are monitored by Oracle Enterprise Manager Grid Control or Oracle Enterprise Manager Cloud Control, the ORACLE_HOME
variable cannot be updated for targets such as Oracle Clusterware, Oracle Database High Availability services, Oracle Net listener, and Oracle Automatic Storage Management (Oracle ASM) when upgrading pre-12c Oracle Clusterware or Single-Instance High Availability (SIHA) database to 12c using the Oracle Universal Installer (OUI).
Workaround:
Manually modify the ORACLE_HOME
variable for targets such as Oracle Clusterware, Oracle Database High Availability services, Oracle Net listener, and Oracle Automatic Storage Management (Oracle ASM) using the Oracle Enterprise Manager Grid Control or Cloud Control console.
After which, on Windows, change the Management Agent service to the Automatic startup type.
Take the following steps to modify target properties in Oracle Enterprise Manager Grid Control or Oracle Enterprise Manager Cloud Control:
Go to the Targets page and click All Targets.
Select a target.
Select a menu item, click Target Setup, and then click Monitoring Configuration.
On the Monitoring Configuration page, set the Oracle Home Path to the upgraded Oracle home.
When Cluster Ready Services (CRS) and related targets are monitored by Oracle Enterprise Manager Database Control (DB Control), the ORACLE_HOME
variable cannot be updated in DB Control for related targets such as Oracle Clusterware, Oracle Database High Availability services, Oracle Net listener, and Oracle Automatic Storage Management (Oracle ASM) when upgrading pre-12c Oracle Clusterware or Single-Instance High Availability (SIHA) database to 12c using the Oracle Universal Installer (OUI).
Workaround:
Manually modify the ORACLE_HOME
variable for targets such as Oracle Clusterware, Oracle Database High Availability services, Oracle Net listener, and Oracle Automatic Storage Management (Oracle ASM) using the Database Control user interface.
To modify the target properties in Oracle Enterprise Manager Database Control (DB Control), take the following steps:
Go to the Agents page and click on an agent.
Select the target and click Configure.
On the Monitoring Configuration page, set the Oracle Home Path to the upgraded Oracle home.
Oracle Exadata Database Machine and SPARC SuperCluster support databases running Oracle Database 12c on systems running Oracle Exadata Storage Server software version 11.2.3.2.1 or higher. Oracle Database 12c Release 1 (12.1) databases can run alongside other databases running Oracle Database 11g Release 2 (11.2) in the same cluster. The normal rule applies for upgrading Oracle Clusterware and Oracle Automatic Storage Management (Oracle ASM) to an equal or higher version than any database.
The following restrictions are known:
Oracle Database 12c offload libraries are present only in the Oracle Exadata Storage Server software version 12.1.1.1.0 or higher. Therefore, smart scan offload for Oracle Database 12c is available only with Exadata Storage Server software version 12.1.1.1.0 or higher and is disabled with earlier versions of the Exadata Storage Server software.
The I/O resource management plans for the Oracle Database 12c databases are enforced only with Exadata Storage Server software version 12.1.1.1.0 or higher.
The cell metrics for the Oracle Database 12c databases are reported under OTHER_DATABASE
.
Minimum software requirements and patches needed to run Oracle Database 12c on Oracle Exadata or SPARC SuperCluster can be found at https://support.oracle.com
. You must register online before using My Oracle Support. Contact your Oracle Sales Representative if you do not have a My Oracle Support account.
Note the following when working with Oracle Clusterware and Oracle Automatic Storage Management (Oracle ASM), which are installed with an Oracle Grid Infrastructure for a cluster installation.
Some non-Oracle Grid Infrastructure usage of mount points prevents unmounts and volume disables in the kernel (reference Bug 8651848). Examples include:
Network File System (NFS)
Samba/Common Internet File System (CIFS)
If this reflects your situation, ensure that you discontinue usage of these features before trying to initiate a stack shutdown, file system unmount, or volume disable.
Additionally, certain user space processes and system processes may use the file system or volume device in a way that prevents the Oracle Grid Infrastructure stack from shutting down during a patch or upgrade.
If this occurs, use the lsof
and fuser
commands (Linux and UNIX) or the handle
and wmic
commands (Windows) to identify processes which are active on the Oracle ACFS file systems and Oracle ADVM volumes. To ensure that these processes are no longer active, dismount all Oracle ACFS file systems or Oracle ADVM volumes and issue an Oracle Clusterware shutdown. Otherwise, errors may be issued during Oracle Clusterware shutdown relating to activity on Oracle ACFS file systems or Oracle ADVM volumes which will stop the successful shutdown of Oracle Clusterware.
The name Oracle interMedia was changed to Oracle Multimedia in Oracle Database 11g Release 1 (11.1). The feature remains the same, only the name has changed. References to Oracle interMedia were replaced with Oracle Multimedia, however some references to Oracle interMedia or interMedia may still appear in graphical user interfaces, code examples, and related documents in the Oracle Database 12c Release 1 (12.1) documentation library.
For additional information, refer to the Oracle Multimedia Readme file located at:
ORACLE_HOME/ord/im/admin/README.txt
For additional information about Oracle ODBC Driver, see the Oracle ODBC Driver Release Notes.
The Oracle SQL Developer readme file is located at:
ORACLE_HOME/sqldeveloper/readme.html
Note the following when working with Oracle Text. You should also check entries for the Oracle Text Application Developer's Guide in the Documentation Addendum.
An Oracle Text knowledge base is a hierarchical tree of concepts used for theme indexing, ABOUT
queries, and deriving themes for document services. The following Oracle Text services require that a knowledge base be installed:
Index creation using a BASIC_LEXER
preference where INDEX_THEMES=YES
SYNC
ing of an index where INDEX_THEMES=YES
CTX_DOC.THEME
s
CTX_DOC.POLICY_THEME
s
CTX_DOC.GIST
CTX_DOC.POLICY_GIST
CTX_QUERY.HFEEDBACK
CTX_QUERY.EXPLAIN
, if using ABOUT
or THEMES
with TRANSFORM
CTX_DOC.SNIPPET
(if using the ABOUT
operator)
CTX_DOC.POLICY_SNIPPET
(if using the ABOUT
operator)
CONTAINS
queries that use ABOUT
or THEMES
with TRANSFORM
The Knowledge Base Extension Compiler, ctxkbtc
Clustering and classification services, if themes are specified
If you plan to use any of these Oracle Text features, then you should install the supplied knowledge bases, English and French, from the Oracle Database Examples media, available for download on OTN.
Note that you can extend the supplied knowledge bases, or create your own knowledge bases, possibly in languages other than English and French. For more information about creating and extending knowledge bases, refer to the Oracle Text Reference.
For information about how to install products from the Oracle Database Examples media, refer to the Oracle Database Examples Installation Guide that is specific to your platform.
Note the following Oracle Text limitations for Oracle Database 12c:
BIG_IO
and SEPARATE_OFFSETS
preferences are not supported in the following scenarios:
If the database session is restricted (for example, ALTER SYSTEM ENABLE RESTRICTED SESSION
)
Running ALTER TABLE MODIFY PARTITION
on an index created with these preferences
Trying to create an index with a quoted index name with mixed case characters
Using CTX_DDL.RECREATE_INDEX_ONLINE
STAGE_ITAB
preference is not supported in the following scenarios:
Trying to issue ALTER INDEX REBUILD PARAMETERS ('resume')
Trying to create or alter an index to use SYNC ON COMMIT
Using CTX_DDL.RECREATE_INDEX_ONLINE
Using CTX_DDL.REMOVE_MDATA
Trying to alter an index with the clause MIGRATE FIELD SECTION
FORWARD_INDEX
preference is not supported in the following scenarios:
Concurrently running CTX_DDL.SYNC_INDEX
and CTX_DDL.OPTIMIZE_INDEX
on an index with this preference
Having SDATA
sections in the same index
Marking an Oracle Text index to be invisible is not supported.
For additional information about Oracle Warehouse Builder (OWB) in Oracle Database 12c Release 1 (12.1), refer to the Oracle Warehouse Builder Release Notes.
The following features are not supported with Oracle XML DB:
Flashback Data Archive
Editioning Views
SecureFiles LOB Encryption
Oracle Label Security (OLS) with a hybrid structured and unstructured XMLIndex on the same XML document.
For tables created prior to 11.2.0.2, the view ALL|DBA|USER_XML_OUT_OF_LINE_TABLES
may not return an out-of-line table in the case where xdb:defaultTable
annotation was used but xdb:SQLInline
was not specified for that table while registering the Oracle XML DB schema (reference Bug 7646934).
For additional information about Pro*C, see the Pro*C/C++ Release Notes.
For additional information about Pro*COBOL, see the Pro*COBOL Release Notes.
For additional information about SQL*Plus, see the SQL*Plus Release Notes.
Note the following items when working with Summary Management.
The following items apply to Query Rewrite.
If Fine Grained Auditing (FGA) is enabled on a table in the query, then Query Rewrite will not occur for this query.
Query rewrite does not occur for queries that use the PARTITION
clause in the FROM
clause to access table partitions. In order for query rewrite to rewrite such queries, the PARTITION
clauses must first be converted into equivalent selection predicates and added to the WHERE
clause.
The following are available in Enterprise Edition:
Creation and refresh features of materialized views.
Query rewrite and materialized view advice from the SQL Access Advisor.
When using or refreshing certain materialized views, you must ensure that your NLS parameters are the same as when you created the materialized view. Materialized views that fall under this restriction contain the following constructs:
Expressions that may return different values, depending on NLS parameter settings
It is recommended to write such expressions in the NLS-independent way. For example:
(date > DATE '2003-01-02')
Or:
(rate <= 2.150)
Equijoins where one side of the join is character data
The result of this equijoin depends on collation which can change on a session basis, giving an incorrect result in the case of query rewrite or an inconsistent materialized view after a refresh operation.
Expressions that generate internal conversion to character data in the select list of a materialized view, or inside an aggregate of a materialized aggregate view
This restriction does not apply to expressions that involve only numeric data; for example, a+b
where a
and b
are numeric values.
Note the following when working with Transparent Data Encryption (TDE).
Databases that enabled tablespace encryption in Oracle Database 11g Release 1 (11.1) should execute a master rekey after upgrading to Oracle Database 12c Release 1 (12.1) before converting the database to a pluggable database (PDB) (reference Bug 16219806). This ensures that a unified TDE tablespace and column encryption key is available for use if a rekey command was not previously executed.
In Oracle Database 12c, this can be done with the following commands:
ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY <password>; ADMINISTER KEY MANAGEMENT SET KEY IDENTIFIED BY <password> WITH BACKUP;
This section lists known bugs for this release. A supplemental list of bugs may be found as part of the release documentation specific for your platform.
This section of the Readme contains the following sub-sections:
Section 3.24.1, "Multitenant Container Database (CDB) and Pluggable Database (PDB) Known Bugs"
Section 3.24.2, "Database Configuration Assistant Known Bugs"
Section 3.24.3, "Deinstallation Tool Known Bugs"
Section 3.24.4, "Java Database Connectivity (JDBC) Known Bugs"
Section 3.24.5, "Oracle Automatic Storage Management (Oracle ASM) Known Bugs"
Section 3.24.6, "Oracle ASM Dynamic Volume Manager (Oracle ADVM) Known Bugs"
Section 3.24.7, "Oracle ASM Cluster File System (Oracle ACFS) Known Bugs"
Section 3.24.8, "Oracle Database Quality of Service (QoS) Management Known Bugs"
Section 3.24.9, "Oracle Clusterware Known Bugs"
Section 3.24.10, "Oracle Database Enterprise Edition Known Bugs"
Section 3.24.12, "Oracle Data Guard Logical Standby Database Known Bugs"
Section 3.24.13, "Oracle Enterprise Manager Known Bugs"
Section 3.24.14, "Oracle OLAP Known Bugs"
Section 3.24.15, "Oracle Real Application Clusters (Oracle RAC) Known Bugs"
Section 3.24.16, "Oracle SQLJ Known Bugs"
Section 3.24.17, "Oracle Text Known Bugs"
Section 3.24.18, "Oracle Universal Installer Known Bugs"
Section 3.24.19, "Oracle XML DB Known Bugs"
Section 3.24.20, "RMAN Known Bugs"
Section 3.24.21, "Vendor and Operating System Known Bugs"
This section describes known bugs for multitenant container database (CDB) and pluggable database (PDB).
Any time that you unlock an account (ANONYMOUS
, in particular) in the ROOT
database, you must then explicitly lock that account in any pluggable database (PDB) to which you do not want it to have access.
When a PDB is unplugged from a CDB, the values of the initialization parameters that were specified for the PDB with SCOPE=BOTH
or SCOPE=SPFILE
are added to the PDB's XML metadata file. However, these values are not restored for the PDB when it is plugged in to a CDB.
The failover DDL operation ALTER DATABASE FAILOVER TO
<target_standby_db_unique_name>
may fail to terminate all sessions connected to the standby database in a reasonable period of time. In such cases, the failover fails with the ORA-3113
error.
Workaround: Shut down all nodes at the standby database; then mount one node and rerun the failover DDL. If the failover operation continues to fail, then refer to steps 8 and 9 in Section 9.2.2 "Performing a Failover to Physical Standby" of Oracle Data Guard Concepts and Administration.
If you upgrade your database to Oracle Database 12c Release 1 (12.1) and then plug it into a CDB, the automatic SQL Tuning Advisor generates the following error:
ORA-65040: operation not allowed from within a pluggable database
This occurs because, in a 12.1 CDB, the automatic SQL Tuning Advisor is supposed to run at CDB$ROOT
and not within a PDB. The error occurs because the PDB is automatically executing an old program which comes from the upgraded database. The problem does not exist for a brand new PDB.
Workaround: Connect to the PDB where you see the ORA-65040
error for the automatic SQL Tuning Advisor, use the DBMS_SCHEDULER.DROP_PROGRAM('AUTO_SQL_TUNING_PROG')
procedure to delete the existing old AUTO_SQL_TUNING_PROG
program, and then run the execsqlt.sql
script to re-create it. You can find the script in the ORACLE_HOME/admin
directory.
Automatic SQL Tuning Advisor can be configured at the CDB level only.
You can configure the following automated maintenance tasks at the CDB or PDB level:
Optimizer Statistics gathering
Segment Advisor
Shared servers cannot be enabled or disabled at the pluggable database (PDB) level. Therefore, either all PDBs or none of the PDBs must use shared servers unless one of the following workarounds is used.
Workaround: Any of the following workarounds can be used if only some PDBs in a multitenant container database (CDB) should use shared servers:
Modify the connect alias for the connections that should be dedicated to include (SERVER=DEDICATED)
in the CONNECT_DATA
section.
If the connections that should be dedicated share a sqlnet.ora initialization parameter file, set USE_DEDICATED_SERVER=on
.
In the dispatcher configuration, use the SERVICE=
field to specify the list of PDB services that should use shared servers.
Pluggable database (PDB) cloning using a snapshot copy fails on Oracle ASM Cluster File System (ACFS) if schema files are present.
In a Standard Edition multitenant container database, unplugging PDB using the RMAN option in Database Configuration Assistant (DBCA) fails with the following error:
Error while while creating backup piece
Workaround: Use the PDB archive (TAR format) option or manually unplug the PDB using SQL*Plus.
In a CDB where the CURSOR_SHARING=FORCE
parameter is set and a PDB is plugged in with a character set that is incompatible to the CDB, an attempt to open the PDB fails with the ORA-41400
error and the PDB is implicitly closed again. The incompatible character set violation is recorded in the PDB_PLUG_IN_VIOLATIONS
view.
The default memory allocated to Oracle from DBCA is 40% of the total RAM. This may not be sufficient when creating a multitenant container database (CDB) with a higher number of pluggable databases (PDBs). With the default memory parameters, you may run into the ORA-4031 error while creating PDBs.
Workaround: Change the system global area (SGA) target to a larger value when using DBCA to create a CDB. Oracle recommends an increase to the default SGA of 24 megabytes multiplied by the number of PDBs. Higher values may be necessary depending on the workload.
After flashback CDB across PDB point-in-time recovery, temporary files may get deleted.
When creating a CDB with 252 PDBs using the default parameters, the ORA-00020
error is returned.
Workaround: Change the process number to a larger value when using DBCA to create a CDB.
Per-PDB session counts or limits are not sent to the listener. Thus, it is possible for a listener to direct a connection to an instance where the PDB is at the limit while the PDB on a different instance is not at the limit.
Note that this only matters if the PDB is at its session limit. If it is not, there is no impact from this bug.
In Oracle Database 12c, you should choose between standalone Oracle Label Security (OLS) and OLS-OID (Oracle Label Security-Oracle Internet Directory) configuration for an Oracle Database 12c CDB while creating a CDB using DBCA. The OLS-OID configuration can be chosen by selecting the OLS-OID option while configuring Label Security in the Custom Install option. Once chosen, you cannot change the option for the lifetime of the CDB.
Also, you should not plug a standalone OLS-enabled PDB into a CDB which has OLS-OID enabled or vice versa. If done, warnings will be logged in the PDB_PLUG_IN_VIOLATIONS
view. The incompatibility could be resolved by running rdbms/admin/catolsrecomp.sql
.
Workaround: To remove the warnings in the PDB_PLUG_IN_VIOLATIONS
view, refer to the Oracle Database Administrator's Guide.
When a PDB with an offline tablespace is plugged into a CDB, the tablespace cannot be brought online after the plug in is done. Currently, a warning is raised during plug in time to indicate this limitation.
Workaround: Before plugging in a PDB make sure there are no offline tablespaces. If there are any offline tablespaces make sure they are brought online before doing the plug in.
Using the ALTER SESSION SET CONTAINER
statement in the definer's rights procedures can result in some session states not getting set up correctly.
Workaround: Use the DBMS_SQL
package to execute a SQL statement in a given container, or use the ALTER SESSION SET CONTAINER
statement outside of the definer's rights procedures.
If the primary database is a CDB and the control file is re-created such that it does not have all of the data file names, it will crash or interrupt the recovery process on the standby databases.
Workaround: Take the following steps on the primary database:
Shut down the primary database.
Delete the control file.
Start the primary database without mounting the database.
Re-create the control file including the missing data files.
Execute database recovery for the missing files on the primary database and open the database and the PDBs.
Then, continue with the following steps on the standby database:
Shut down the standby database.
On the primary database, create a new standby control file.
Replace the previous standby control file with the newly created standby control file.
Mount the standby database.
Create the standby redo logs.
Open the standby database and all of its PDBs.
Start the managed recovery process (MRP).
This section describes known bugs for Oracle Database Configuration Assistant (DBCA).
If you change the MAX_STRING_SIZE
initialization parameter while creating a database using DBCA with a template that includes data files, the database creation fails with the following error:
ORA-14694: database must in UPGRADE mode to begin MAX_STRING_SIZE migration
Workaround: Leave the MAX_STRING_SIZE
initialization parameter set to the default (STANDARD
) or whatever it was set to in the template during DBCA. If you need to create a database with MAX_STRING_SIZE=EXTENDED
, use the custom database template in DBCA. In a multitenant container database (CDB), the MAX_STRING_SIZE
initialization parameter is a per-PDB parameter. The root CDB always uses STANDARD
semantics, regardless of the parameter. You can change the MAX_STRING_SIZE
initialization parameter for PDBs as needed after the CDB is created.
This section describes known bugs for the deinstallation tool.
When running the deinstallation tool to deinstall the database, you will be prompted to expand the Oracle home and to select a component. If you select the top level component, Oracle Database Server
, and do not select the Oracle home, OUI does not show the message to run the deinstall utility and proceeds with the deinstallation of the database.
Workaround: Run the deinstallation tool to deinstall the Oracle home.
This section describes known bugs for Java Database Connectivity (JDBC).
When using Oracle Application Express Application Migration (Application Migration) with Java Database Connectivity (JDBC), the standard parameter markers (?
) are converted to Oracle style in the format ":<n>"
. That is, each consecutive "?"
is converted to ":1"
, ":2"
, and so on, before the query goes to the server for translation. However, due to an existing bug (also reference Bug 16182805), the conversion is not working reliably and converts the markers to the format " :b<n> "
thus causing unreliable behavior. This incorrect format can cause inconsistent behavior during query translation. Unfortunately, this inconsistent behavior is documented in the Oracle Database SQL Translation and Migration Guide.
Workaround: The incorrectly documented behavior will be fixed in a future release. Any translation with parameters working in Oracle Database 12c is a coincidence and is not consistent.
When using Oracle Application Express Application Migration (Application Migration) with Java Database Connectivity (JDBC) driver, binds will not be translated correctly. This impacts the Oracle Sybase Translator which cannot work with bind variables in a JDBC program but is not limited to the Oracle Sybase Translator. Any translator relying on binds may be impacted.
Several changes were made to local transaction processing for compliance with the JDBC spec 4.1. If setAutoCommit(true)
is called and a local transaction exists, the transaction is automatically committed (in earlier releases, no action was taken). If commit or rollback is called while in AUTOCOMMIT
mode, the driver will throw an exception (again, in earlier releases, no action was taken). It is possible that your application will have these situations and it may be difficult to immediately change the software.
Workaround: By adding the -Doracle.jdbc.autoCommitSpecCompliant=false
system property to the command line, the old behavior of no action will be preserved.
To use Oracle WebLogic Server (WLS) Active GridLink 10.3.6 or 12.1.1 with the new Oracle Database 12c Release 1 (12.1) driver, the -Doracle.ucp.PreWLS1212Compatible=true
system property must be specified for compatibility.
This section describes known bugs for Oracle Automatic Storage Management (Oracle ASM).
When upgrading Oracle Grid Infrastructure from 10.2.x.x to Oracle Database 12c Release 1 (12.1) and when the 10.2.x.x Oracle ASM home owner is different than the 12.1 Oracle Grid Infrastructure home owner, the upgrade will fail.
Workaround: Take the following steps:
After the failure, exit the Oracle Universal Installer (OUI).
As the Oracle Grid Infrastructure user, set the ORACLE_BASE environment variable to the Oracle base of the 12.1 Oracle Grid Infrastructure home.
Run the following command to finish the Oracle ASM upgrade:
GRIDHOME/bin/asmca -silent -upgradeASM
When creating a disk group for use in Oracle Flex ASM mode that will use Oracle ASM Dynamic Volume Manager (Oracle ADVM) volumes, COMPATIBLE.ASM
must be set to either 12.1 or 12.1.0.0.0 but not 12.1.0.1.0. Oracle ADVM volumes will not be able to be used in Oracle Flex ASM mode if COMPATIBLE.ASM
is set to 12.1.0.1.0 during disk group creation. This issue does not exist if COMPATIBLE.ASM
is set to 12.1.0.1.0 after disk group creation.
Workaround: Set COMPATIBLE.ASM
to either 12.1 or 12.1.0.0.0.
After installing an Oracle Flex ASM cluster or upon completion of the conversion process from a classic Oracle ASM cluster to an Oracle Flex ASM cluster, enabling an Oracle ADVM volume experiences a timeout when the Cluster Ready Services (CRS) stack starts up in Oracle Flex ASM mode and the following error message may appear on the console:
CRS-5000: Expected resource ora.C3DBFRA.dg does not exist in agent process. For details refer to "(:CLSN00107:)" in "/TB/12.1.0/grid/log/hi07-3d/agent/crsd/orarootagent_root/orarootagent_root.log".
Workaround: This condition is benign and may be ignored. Enabling the volume should succeed within a few minutes and the CRS volume resource will transition to an ONLINE
state.
Starting in Oracle Database 12c, the default discovery string for Oracle ASM has changed to /dev/sd*
on Linux.
Workaround: Explicitly set the discovery string appropriate for your system, in order to continue to use the /dev/raw/*
disks.
Oracle Automatic Storage Management (Oracle ASM) loses the rolling migration state if Cluster Ready Services (CRS) shuts down on all nodes.
Workaround: Consider the following scenario of 4 nodes (node1
, node2
, node3
, and node4
) that are at release 11.2.0.2 and being upgraded to Oracle Database release 12.1.0.1:
node1
and node2
are upgraded to 12.1.0.1 and running.
node3
and node4
are still at 11.2.0.2 and running.
Now consider that there is an outage where all CRS stacks are down which leaves the cluster in a heterogeneous state (that is, two nodes at 11.2.0.2 and two nodes at 12.1.0.1).
To proceed with the upgrade, only nodes at 11.2.0.2 (that is, node3
and node4
or both) should be started and the following command needs to be executed on the Oracle ASM instance on node3
and node4
before starting any 12.1.0.1 node:
ALTER SYSTEM START ROLLING MIGRATION TO '12.1.0.1'
Continue the upgrade procedure as already documented from this point forward.
Note that before executing the preceding step to bring the Oracle ASM cluster back into rolling migration, you cannot start two nodes of different versions in the cluster. If you do so, one of the Oracle ASM versions fail with either the ORA-15153
or ORA-15163
error message.
The asmgidwrap
script needs to be called if you are creating a database manually on Oracle ASM to avoid a permission error.
Workaround: For a role-separated installation (that is, there is a different user and group for grid and RDBMS), use DBCA to create the database that automatically calls asmgidwrap
script while creating a database on Oracle ASM. If you choose to create a database manually, the script needs to be called explicitly so the proper group can be set to avoid a permission error.
This section describes known bugs for Oracle ASM Dynamic Volume Manager (Oracle ADVM).
Oracle ADVM does not support mounting ext3 or ext4 file systems over Oracle ADVM with the mount barrier option enabled. The mount barrier option is enabled by default on SLES11.
Workaround: Mount the ext3 or ext4 file system with -o barrier=1
. For example:
mount -o barrier=0 /dev/asm/myvol-131 /mnt
This section describes known bugs for Oracle ASM Cluster File System (Oracle ACFS).
Inactive volumes may prevent the Oracle Grid Infrastructure upgrade from completing.
Workaround: If Oracle Universal Installer (OUI) reports a failure during the grid upgrade, take the following steps:
Ensure that all Oracle Automatic Storage Management Cluster File System (Oracle ACFS) file system resources are stopped by using crsctl stat res -t -w "TYPE == ora.acfs.type
and crsctl stop res
<resource name>
-f
.
Ensure that all volumes are enabled by using SQL or ASMCA to enable them.
Rerun the crs\config\gridconfig.bat
script.
Continue the upgrade from OUI.
When upgrading from 11.2.x.x to Oracle Database 12c Release 1 (12.1), the rootupgrade
script may fail to stop the 11.2 Cluster Ready Services (CRS) stack on a node if the Oracle ACFS resource was not stopped first.
Workaround: Reboot one of 11.2.x.x nodes and then rerun the rootupgrade
script.
During an upgrade from Oracle Database 11g to Oracle Database 12c, the Oracle Automatic Storage Management Cluster File System (Oracle ACFS) registry CRS resource is replaced with individual CRS Oracle ACFS file system resources corresponding with each registered Oracle ACFS file system.
As a part of this process, any Oracle ASM Dynamic Volume Manager (Oracle ADVM) volumes in the Oracle ACFS registry which no longer exist or are offline during the upgrade will result in errors during the conversion. For example:
PRCA-1089 : Unable to retrieve volume and disk group for volume device path <path>
Workaround: This situation can be avoided by using the acfsutil registry -d
command to remove volumes and mount points from the Oracle ACFS registry that are no longer valid.
Alternatively, if a volume cannot be enabled as part of the upgrade process, the upgrade will succeed but Oracle ACFS file systems associated with offline volumes will need to be manually re-added to the CRS namespace. This can be done with the following steps:
Enable the volume using SQL, Oracle ASM Configuration Assistant (ASMCA), or the srvctl start volume
command.
Use the acfsutil registry -a
command or the srvctl add filesystem
command to re-add the Oracle ACFS file system to the CRS namespace.
When enabling Oracle ACFS plug-in for the first time on a particular node, the acfsutil plugin enable
command may fail with the following error:
ACFS-3613: Unable to write plug-in config file.
Workaround: List the contents of the Oracle ACFS root directory and then reissue the acfsutil plugin enable
command.
In the rare event of a transparent high availability failure where dropping the volume does not trigger the removal of its corresponding volume resource, the resource can be removed using the following command:
srvctl remove volume
The High Availability NFS for Grid Home Clusters (HANFS) feature does not support IPv6 addresses in this release.
Workaround: Configure the High Availability Virtual Internet Protocol (HAVIP) using a name that resolves only to an IPv4 address.
When modifying a registered file system using acfsutil registry
and if there are exports or databases dependent on the file system, the file system will still be modified. For instance, this could result in a non-supported configuration if you have changed a file system from a cluster-wide system to a 'node local' file system.
In a cluster with a password-protected key store, when an Oracle ACFS file system using encryption is mounted through the Oracle ACFS mount registry, the administrator is not prompted to enter the key store password. Although the process of mounting the file system succeeds, not all information required for Oracle ACFS encryption to work correctly is made available to the file system. In this case, encryption is not operational on this file system and any encrypted files in the file system are not available for read or write.
Workaround: In a cluster with a password-protected key store, do not use the Oracle ACFS mount registry for mounting any file systems that are using encryption. If some file systems are already mounted through the Oracle ACFS mount registry, unmount them and remove these file systems from the mount registry to avoid possible unavailability of encrypted data in the future. Then, remount these file systems without using the Oracle ACFS mount registry, providing the correct password when requested. Alternatively, if you want to continue to use the mount registry with encrypted file systems, migrate the encryption keystore using acfsutil keystore migrate
command to the type that does not require a password during file system mounting.
This section describes known bugs for Oracle Database Quality of Service (QoS) Management.
Resource Manager changed the way CPU resources are managed for CDB or PDB database deployments in a manner that was incompatible with Oracle Database QoS Management 11.2 plan and models. These changes resulted in the need for two plans and different resource modeling with associated workload validation. These models need to be developed, tested, and calibrated on production Resource Manager code. Therefore, in this initial release, Oracle Database QoS Management is only able to measure and monitor CDB or PDB database deployments and cannot make recommendations to help CDB or PDB performance classes that are violating their performance objectives.
This bug applies to recommendations for CPU resources managed by Oracle Database QoS Management. If the number of configured CPUs for all instances on a server is less than the number of physical CPUs for that server, then the nonallocated, or "free", CPUs are not detected by Oracle Database QoS Management and no recommendation is made to increase the number of configured CPUs. Only those "slices" that host databases are considered as donors for the target slice. Adding one of the non-allocated CPUs should be the first-ranked Move CPU action.
Workaround: Make sure the sum of CPU counts configured for each database instance on each server is the same as the number of physical CPUs.
This bug applies to platforms that support the Cluster Health Monitor (CHM). If an Oracle Clusterware-managed database service is in a stopped but not disabled state, it will be started by Oracle Database QoS Management if the server hosting that service is not detected to be in a memory overcommitted state. If memory is overcommitted, then all enabled services will be stopped even if they were manually started. The desired behavior is to only start services on the transition from a memory overcommitted state (red) to a normal state (green). If a service is manually started when the server is in the red state, that service should not be shut down.
Workaround: Stop and disable services that you want to remain in the stopped state or disable Oracle Database QoS Management from the Oracle Enterprise Manager Console.
This section describes known bugs for Oracle Clusterware.
Upgrading the Oracle Grid Infrastructure from Oracle Database 11g Release 2 (11.2.0.4) to Oracle Database 12c Release 1 (12.1) fails due to Oracle ACFS or Oracle ADVM resources being unable to stop.
Workaround: Manually stop the resources using SRVCTL or CRSCTL, and retry the upgrade.
In an Oracle Flex ASM cluster configuration with a pre-11.2 database setting, the pre-11.2 database's CLUSTER_INTERCONNECTS
initialization parameter uses a public network instead of a private network if the Oracle Cluster Synchronization Services (CSS) private network and Oracle ASM network are classified to be the same network.
Workaround: Select a different network for the cluster interconnect and Oracle ASM.
The Oracle Cluster Synchronization Services (CSS) or Oracle ASM instances cannot rejoin the cluster after a failure in all of the private networks.
As a prerequisite, ensure that at least one private network has been restored on the failed node.
Check the cluster state. The follow commands can be used to determine if instances cannot rejoin the cluster:
crsctl stat res ora.cssd -init crsctl stat res ora.asm -init crsctl check cluster -all
Workaround: Reboot the rejoining node. If rebooting the node is not acceptable, then the following sequence may be followed:
Stop the clusterware on the node that cannot rejoin the cluster using the following command:
crsctl stop crs –f
Stop any remaining Highly Available IP Addresses (HAIP) if HAIP is in use on the system. HAIP addresses are in the 169.254.0.0 subnet by default. Use operating system-specific commands to stop the interfaces. For example, on Linux use:
ifconfig eth0:1 down
On Solaris use:
ifconfig net2:1 unplumb
On AIX use:
ifconfig en4 169.254.180.68 delete
Check that at least 10 minutes have passed from the point at which it was noticed that the node failed to join the cluster. Restart the clusterware using the following command:
crsctl start crs
If the node still does not rejoin the cluster, reboot the node.
If you upgrade an 11.2 Oracle Clusterware having a large number of services to Oracle Database 12c Release 1 (12.1), the rootupgrade.sh
script that runs on the last cluster node aborts because the ora.crsd
startup initialized but failed to complete during the upgrade.
Workaround: Rerun the rootupgrade.sh
script on the last node.
Upgrading from 11.2.x.x to Oracle Database 12c, when there are more than 1,000 database service resources registered, the root script will fail on the first node while trying to upgrade the Server Management (SRVM) model. This problem may prevent the Cluster Ready Services (CRS) upgrade from 11.2.x.x to Oracle Database 12c from completing when there are more than 1,000 database service resources.
Workaround: Patch the 11.2 home to the version with the fix or remove database service resources, complete the upgrade, and re-register the database service resources.
Oracle Universal Installer returns the INS-41112
error when /usr/sbin/ping6
does not have setuid
set.
Workaround: Run the following command as root
to set the setuid
and rerun the installer:
chmod +s /usr/sbin/ping6
In some cases in an Oracle Restart environment, the Oracle Clusterware stack generates a connection to the Oracle ASM instance every second which results in producing many audit files under Grid_Home/rdbms/audit
that may fill up the disk over time.
Workaround: The following command will immediately stop these audit files from being generated:
/u01/app/oracle/product/12.1.0/grid/bin/crsctl modify resource ora.asm -attr START_DEPENDENCIES="hard(ora.cssd)"
In an environment with 5 or more voting files, if a node is shut down abruptly, it is possible that the Oracle Cluster Synchronization Services (CSS) daemon will write its last disk heartbeat to only a subset of voting files for that node. This would result in a situation where two voting files have different disk heartbeat timestamps for the node. In this situation, if you attempt to shut down an entire cluster and start another node (other than the one that was shut down abruptly) in EXCLUSIVE MODE
, the EXCLUSIVE MODE
start could fail as it might incorrectly perceive the abruptly shut down node to be up.
Workaround: Use the following steps to recover from this problem:
Either physically remove all of the voting files or make them offline.
Bring up the stack in EXCLUSIVE MODE
.
Delete all the voting files from the configuration using the crsctl delete css votedisk
command.
Add new voting files using the crsctl add css votedisk
command.
The stack can now be brought up in Oracle Flex Cluster mode.
Creation of an 11.2-based database on a newly installed 12.1 Oracle Grid Infrastructure fails.
An upgraded Oracle Grid Infrastructure from a pre-12.1 release to 12.1 will not have a problem running an 11.2-based database.
Oracle resources for release 10.2 and release 11.1 Oracle RAC databases may not operate properly after upgrading Oracle Clusterware to Release 12.1.
Workaround: After installing Oracle Clusterware 12g Release 1 (12.1), contact Oracle Support Services to obtain the patches for the following bugs:
8373758 - TB-CMP: 11107 SERVICE CAN'T BE BROUGHT UP BY 11107 SRVCTL WHEN WITH 11.2 CRS
8441769 - TB_UD: INCORRECT SERVICE INFO REGISTER TO DB, UPGRADE CRS_HOME 11.1.0.7 -> 11.2
8406545 - TB-CMP: RESTART OF 11.2 HAS STACK FAILED TO BRING UP 11.1 ORACLE RAC INSTANCE
8262786 - TB-CMP: FAIL TO START 11106 DB INSTANCE WITH 11.2 CRS
Note:
Apply the patches to the Oracle Database home.When opening an instance of an Oracle Real Application Clusters (Oracle RAC) multitenant container database (CDB), the open may hang. This is because the pluggable databases (PDBs) were not opened uniformly across all instances.
Consider PDB1
of a CDB being opened on Instance 1
but not on Instance 2
. Also, consider that there was a dead transaction that originated on Instance 2 that modified PDB1
sometime in the past. Since PDB1
is open on Instance 1
, it is possible for processes to try and modify data already modified by that dead transaction. However since the undo segment belongs to Instance 2, Instance 1
cannot recover the dead transaction. This dead transaction, however, cannot be recovered on Instance 2 either since PDB1
is closed on Instance 2. This leads to the hang.
Workaround: Start PDB1
on all of the instances that are open.
In Oracle Grid Infrastructure release 12.1 on the Linux platform, the default Oracle ASM discovery string has been modified from /dev/raw/raw*
to /dev/sd*
. If the default Oracle ASM discovery string is being used for selecting the devices managed by Oracle ASM and if the existing character device does not map to their respective block devices which are identified by pattern /dev/sd*
, then these devices will not be visible to Oracle ASM. This results in disk groups not being mounted after the upgrade causing the upgrade to fail. The Cluster Verification Utility (CVU) prerequisite check for these devices will also be skipped.
Workaround: Set the Oracle ASM disk discovery string by using the following command before the upgrade:
ALTER SYSTEM SET ASM_DISKSTRING=<ASM_disk_discovery_string> SCOPE=SPFILE;
In the IPv6 environment only, some SCAN virtual IP addresses (VIPs) are not registered in the Grid Naming Service (GNS).
Workaround: If GNS is running in the cluster, use the srvctl relocate gns -node
<node_name>
command to relocate GNS to the node on which SCAN VIP is running. This allows SCAN VIP to be registered to GNS. Afterward, GNS can be relocated to other nodes.
When you have provided the sudo
or root
user in the Oracle Universal Installer (OUI) GUI pages in order to use the Oracle Grid Infrastructure script automation feature, the root
script runs using this automation feature but may fail with the following error:
Exception in thread "main" java.lang.NullPointerException
This happens because IPv6 addresses could not be resolved through one of the named servers defined in the /etc/resolve.conf
file.
Workaround: Open the /etc/resolve.conf
file and collect all of the named servers defined in this file. Usually, the following are defined:
nameserver x1.y1.z1.k1 nameserver x2.y2.z2.k2 nameserver x3.y3.z3.k3
For each of the named servers, run the following command to determine if the IP addresses are resolved:
nslookup -querytype=AAAA <IPv6_address> <named_server>
If you see error messages similar to the following, it means that the particular named server cannot resolve the IPv6 addresses:
;; connection timed out; trying next origin
You need to remove or comment the named servers which cannot resolve the IPv6 addresses.
In a Grid Naming Service (GNS) enabled configuration, the client cannot connect to the database using the SCAN
name. This is because the SCAN
name in the REMOTE_LISTENER
value of the database is not domain-qualified.
Workaround: Using SQL*Plus, manually modify REMOTE_LISTENER
to be a domain-qualified SCAN
name. For example:
SQL> ALTER SYSTEM SET REMOTE_LISTENER ='myscan.mycluster.example.com:1521' SCOPE=BOTH;
When upgrading Oracle Grid Infrastructure to 12.1, you may see following error message on output stream:
PRCR-1154 : Failed to create file output stream with file name: GI Home/cfgtoollogs/crsconfig/srvmcfg0.log
Workaround: None. You can ignore this error message. The upgrade completes irrespective of this warning.
After upgrading the Oracle Grid Infrastructure from 11.2.0.3 to 12.1, the 11.2.0.3 database (administrator managed) does not come up.
Workaround: After the upgrade is finished, bounce Cluster Ready Services (CRS) by running crsctl stop crs
followed by crsctl start crs
.
The SCAN listener rejects service registration from nodes in the same cluster. The rejections are logged in the SCAN listener log file.
Workaround: Use srvctl modify scan_listener -update -invitednodes
or srvctl modify scan_listener -update -invitedsubnets
to specify the nodes or subnet information which the SCAN listener should accept for service registration.
When upgrading 11.1 CRS to 12c Oracle Grid Infrastructure for a cluster and after Oracle ASM Configuration Assistant (ASMCA) upgrades Oracle ASM, some database instances may not be started. This problem is not reflected in the Oracle Universal Installer as an error or warning.
Workaround: Manually check the database instance after upgrading to detect the state of the database instances. For example:
srvctl status database -db <db_name>
Then, manually start the database instance. For example:
srvctl start database -db <db_name>
The Grid Naming Service (GNS) integrity check may fail while running cluvfy
commands if the GNS virtual IP address (VIP) is resolved to IPv4 and IPv6 addresses in a pure IPv6 environment.
Workaround: Query the IPv6 address of the GNS VIP. If the query is successful, you may ignore the GNS integrity failures.
The Grid Infrastructure Management Repository's (GIMR) security policy requires its users' password to be changed every 180 days. In this release, the GIMR clients do not perform this function and thus OLOGGERD and OCLUMON will log connection exceptions.
Workaround: A CRS administrator needs to run (manually or otherwise) the GRID_HOME/bin/mgmtca
command from the node running the GIMR. That node can be found by running the GRID_HOME/bin/srvctl status mgmtdb
command.
Interrupting or killing the installation script on the first cluster node may result in the following errors when the script is run again on the first node or is subsequently run on other cluster nodes:
CLSRSC-46: Error: '$ORA_CRS_HOME/gpnp/wallets/pa/cwallet.sso' does not exist CLSRSC-153: Could not set permissions on '$ORA_CRS_HOME/gpnp/wallets/pa/cwallet.sso' CLSRSC-148: Errors occurred while setting GPnP wallets ownership/permissions
These errors are caused by a missing copy of a non-essential file which is not detected when the existing configuration revalidated on subsequent runs.
Workaround: These errors may be safely ignored, the script will continue to run, and the product installation will not be affected.
However, if a clean run is desired, delete the files in following directories on all cluster nodes before the script restarts on the first node:
rm $ORA_CRS_HOME/gpnp/profiles/peer/* rm $ORA_CRS_HOME/gpnp/wallets/peer/*
When multiple clusters use the same directory on a shared file system to place the Oracle Cluster Registry (OCR) and voting disks, installation and upgrade with mgmtdb
fails.
Workaround: Use different storage locations for OCR or make sure that the mgmtdb
option is disabled for all of the clusters except one.
When a node joins a cluster after a force upgrade, the database instances and services do not start automatically.
Workaround: Manually start the database instances and the services on this node using the SRVCTL located in that database home.
In a Chinese environment (that is, a locale other than zh_CN.utf8
or zh_TW.utf8
), during the Oracle Grid Infrastructure installation, if you enable the "Use "root" user credential"
option, the GUI will hang and the INS-32128
error is returned.
Workaround: There are two workarounds for this bug:
Workaround 1: Set the locale to zh_CN.utf8
or zh_TW.utf8
.
Workaround 2: Do not enable this option. Manually execute root.sh
.
Service resources for pre-11.2 releases may be OFFLINE
after Oracle Grid Infrastructure is upgraded to release 12.1.
Workaround: Use srvctl start service -d
<dbname>
-s
<srvname>
-i
<instname>
to start the OFFLINE
service resources manually.
On rare occasions, when upgrading Oracle Clusterware from 11.1.0.7.7 to 12.1, node reboot issues may be encountered while executing rootupgrade.sh
, which only occurs in the following conditions:
The 11.1.0.7.0 release was installed on the cluster and the clusterware was started on a node before patch 7483779 was applied (which is a BLR fix for Bug 7374972).
A full clusterware restart has not occurred since patch 7483779 was applied. A full clusterware restart is a clusterware start after being down on all nodes in the cluster.
If the initial install was 11.1.0.7.1 (that is, 11.1.0.7 CRS Bundle 1 or later), patch 7374972 was included in the initial install, so this problem will not be observed.
Workaround: Perform a full restart of the clusterware on all nodes before upgrading to 12.1.
This section describes known bugs for Oracle Database Enterprise Edition.
The Oracle OLAP option is only available with Oracle Database Enterprise Edition. An error occurs if you attempt to use Oracle OLAP with Oracle Database Standard Edition (SE). For example, if you try to export using Oracle OLAP with SE, you see the following errors:
EXP-00008: ORACLE error 29280 encountered ORA-29280: invalid directory path ORA-06512: at "SYS.UTL_FILE", line 41 ORA-06512: at "SYS.UTL_FILE", line 478 ORA-06512: at "SYS.DBMS_AW_EXP", line 89 ORA-06512: at "SYS.DBMS_AW_EXP", line 1177 ORA-06512: at line 1 EXP-00085: The previous problem occurred when calling SYS.DBMS_AW_EXP.instance_extended_info_exp for object 85676
Workaround: Use Oracle OLAP with Oracle Database Enterprise Edition.
For pluggable database (PDB) maintenance operations, parallel tasks need to be allocated on all active instances to perform the operation on each instance regardless of the setting of the PARALLEL_MAX_SERVERS
initialization parameter. If an instance had PARALLEL_MAX_SERVERS=0
set, the parallel task was not allocated on the instance and the operation was not performed there.
Workaround: Do not set the value of the PARALLEL_MAX_SERVERS
initialization parameter to 0
. Not setting the PARALLEL_MAX_SERVERS
initialization parameter at all is sufficient.
Adding a nullable column with a default value and then later unsetting the default value in an Oracle Database 12c Release 1 (12.1) environment will not unset the default (back to NULL
) despite the data dictionary reflecting the change to a default value of NULL
. The statements that are impacted are ALTER TABLE
x
ADD
(
y
NUMBER DEFAULT 99)
followed by a subsequent ALTER TABLE
x
MODIFY (
y
DEFAULT NULL)
where y
is a nullable column.
Workaround: Unset the default by using the ALTER TABLE
x
MODIFY (
y
DEFAULT TRIM(''))
statement which has the same semantic result as unsetting the default.
If Oracle RAC database files are located on Network File Storage (NFS) or Oracle Cluster File System 2 (OCFS2), set the FILESYSTEMIO_OPTIONS=DIRECTIO
or FILESYSTEMIO_OPTIONS=SETALL
initialization parameter to avoid data corruption. This issue does not apply to Direct NFS. A patch will be available in the future. Monitor Bug 16865261 for the latest status and patch availability.
Workaround: Set the FILESYSTEMIO_OPTIONS
initialization parameter to either the DIRECTIO
or SETALL
value. Note that this setting is not required if the database files are located on NFS and Direct NFS is enabled.
It is possible for an index fast full scan of a prefix compressed index to fail with ORA-600[6033]
error.
Workaround: Retry the query or force an alternative access path with an appropriate hint.
If shared server is enabled, queries on object link views in a PDB may crash. Object link views are all Oracle supplied and are mostly DBA_HIST
views. A full list can be found using the following command:
SELECT OWNER, OBJECT_NAME FROM ALL_OBJECTS WHERE SHARING='OBJECT LINK' AND OBJECT_TYPE='VIEW'
Workaround: Disable shared server when querying these views.
SQL plan directives are not used when the OPTIMIZER_DYNAMIC_SAMPLING
initialization parameter is set to the default value of 2
.
Workaround: Set the OPTIMIZER_DYNAMIC_SAMPLING
initialization parameter to a value greater than 2
.
If a common user queries certain Oracle-supplied views in the root and the common user is restricted by the CONTAINER_DATA
attribute to see only the data from certain containers, the query may result in an ORA-7445
error.
Workaround: Switch to the root and set the CONTAINER_DATA
attribute of the common user to be ALL
.
Execute the following ALTER USER
statement:
ALTER USER <common_user> SET CONTAINER_DATA=ALL CONTAINER=CURRENT;
Oracle RAC Load Balancing (RLB) events for pluggable database (PDB) services are missing from the Oracle Notification Service (ONS) event stream. Code that relies on these events will not receive them.
When the DBMS_AUDIT_MGMT
.CONTAINER_ALL
value is used in DBMS_AUDIT_MGMT
routines that contain the CONTAINER
parameter, the execution fails with the following error:
ORA-46273: DBMS_AUDIT_MGMT operation failed in one of the PDB
Workaround: Run the required routine after connecting to the respective PDB and use the DBMS_AUDIT_MGMT
.CONTAINER_CURRENT
value for the CONTAINER
parameter.
Pre-11.2 Oracle instance resources may not be started automatically when the 12.1 Oracle Grid Infrastructure stack together with an Oracle Flex ASM configuration starts.
Workaround: Manually start the pre-11.2 Oracle instance resource.
When converting a cluster from classic Oracle ASM to Oracle Flex ASM, one or more occurrences of the following error message sequences are observed in the output of the script that is executed as root
by the user:
CRS-2672: Attempting to start 'ora.proxy_advm' on '<node-name>'^M CRS-5017: The resource action "ora.proxy_advm start" encountered the following error: ^M ORA-03113: end-of-file on communication channel^M Process ID: 0^M Session ID: 0 Serial number: 0^M
For details, refer to (:CLSN00107:)
in <CRS-Home>/log/<
node-name
>/agent/crsd/oraagent_crsusr/oraagent_crsusr.log
.
Workaround: These errors may be ignored. At the end of the conversion, the ora.proxy_advm
correctly goes to an ONLINE
state on all of the nodes.
Concurrent UNION ALL
is automatically invoked for qualifying statements only when the UNION ALL
statement is in a subsequent SELECT
statement. For example, the following command will enable execution of all branches concurrently:
SELECT * FROM (SELECT FROM ... UNION ALL ... UNION ALL)
However, the exact same UNION ALL
statement not executed as a subsequent SELECT
statement will not.
Workaround: Either embed the UNION ALL
construct as a subsequent SELECT
statement or use the following statement to disable legacy code constraints:
ALTER SESSION SET "_fix_control"='6748058:0';
If you have an AL32UTF8 database, and if SQL*Loader is used with external tables as the load method and the table name contains non-ASCII characters, SQL*Loader may exit without an error and not load any data into the target database. This can occur either:
With a control file if external_table=execute
is specified.
When using express mode if the default load method of external tables is used or is forced using the external_table=execute
command line parameter.
The soft limit of nproc
is not adjusted at runtime by the database. As a result, if that limit is reached, the database may become unstable since it will fail to fork additional processes.
Workaround: Ensure that the soft limit for nproc
in /etc/security/limits.conf
is set high enough to accommodate the maximum number of concurrent threads on the system for the given workload. If in doubt, set it to the hard limit. For example:
oracle soft nproc 16384 oracle hard nproc 16384
While enabling Oracle Flex ASM, there is a requirement to do a rolling restart of all the nodes in the cluster. When a node with management database instance (or database instances managed by Oracle Restart) is restarted, that instance might get relocated to another node which has not been restarted yet. In this case, the database instance will fail to start with the following error:
ORA-15343: Feature Flex ASM is not enabled
This will happen until the database instance is started on a node that has been restarted. When that happens, the database instance will behave normally.
Workaround: None. Once all the nodes are restarted, the database instance will behave normally.
The PQ_CONCURRENT_UNION
hint currently does not work as a statement-level hint but requires the explicit specification of a query block. For example, the following command works and does concurrent UNION ALL
processing:
SELECT /*+ PQ_CONCURRENT_UNION (@SET$1) */ ... UNION ALL ... UNION ALL ...
However, the following command does not work:
SELECT /*+ PQ_CONCURRENT_UNION */ ... UNION ALL ... UNION ALL ... UNION ALL ...
Refer to the Oracle Database SQL Tuning Guide for information on how to identify and name a query block.
Tables containing TIMESTAMP WITH LOCAL TIME ZONE
data cannot be moved between databases using transportable tablespace technology when the time zones of the source and target databases are different. Each affected table will be flagged during import with the following error:
ORA-39360, Table "<owner>"."<table name>" skipped due to transportable import and TSLTZ issues.
Workaround: Convert the target database to the same time zone as the source database or move the affected tables with the conventional Data Pump Export and Import.
The Oracle interval data type, INTERVAL YEAR TO MONTH
, does not work properly with the Ethiopian calendar across all components such as SQL, PL/SQL, OCI, Pro*C, and so on.
Certain errors raised while using the ALTER TABLE MOVE ONLINE
statement can be ignored.
Using indexes for indexed partitions or a full table scan for partitions with no indexing is necessary to leverage partial indexing to its fullest extent. Oracle Database 12c Release 1 (12.1) currently does not support table expansion for interval partitioned tables, the functionality to internally rewrite a statement into a UNION ALL to leverage indexes whenever possible.
Workaround: Either manually rewrite a statement into a UNION ALL
operator to separate partitions with and without indexing or to disable the interval partition functionality.
Starting Oracle Database 12c Release 1 (12.1), temporary LOBs sized up to 256K live in program global area (PGA) memory. This can lead to increased PGA memory consumption. Some workloads may encounter the ORA-4030
error depending on the number of temporary LOBs created.
Workaround: Set event 32761, level 16
to turn off in-memory temporary LOBs. Setting this event spills temporary LOBs to temporary segments on disk. Even though this brings the memory consumption to pre-12.1 levels, users will not see the performance benefits of in-memory temporary LOBs.
This section describes known bugs for Oracle Database Vault.
During an upgrade from Oracle Database 11g Release 2 (11.2.0.4) to Oracle Database 12c Release 1 (12.1) with Oracle Database Vault already installed in 11.2.0.4, you get the following two ORA-00001
errors in the upgrade log:
ORA-00001: unique constraint (DVSYS.CODE$_PK1) violated ORA-00001: unique constraint (DVSYS.CODE_T$_UK1) violated
Also, you will see the same errors from the post-upgrade status utility (utlusts.sql
).
Workaround: These errors are not harmful and can safely be ignored.
This section describes known bugs for Oracle Data Guard logical standby database.
LogMiner background processes may encounter ORA-54013
error after downgrading the database to a pre-12.1 release.
Workaround: Modify the table to remove the virtual column. If it was added using the DBMS_STATS.CREATE_EXTENDED_STATS()
function, then the DBMS_STATS.DROP_EXTENDED_STATS()
function can be used to remove the virtual column. If it is supporting a descending index, then drop the descending index.
Piecewise LOB updates on typed index-organized tables (IOT) are not replicated on a logical standby database. SQL Apply will stop with ORA-1403
when it encounters such a change in the redo stream.
Workaround: Use the DBMS_LOGSTDBY.SKIP
procedure at the logical standby to skip the table from being replicated.
Supplemental logging is unsupported for updates of Abstract Data Type (ADT) attributes with a bind value of more than 4,000 bytes.
Workaround: To update ADT attributes that need replicating, use direct bind only if the bound value is smaller than 4,000 bytes (32,767 bytes if max_string_size=extended
). To bind variables with values beyond this limit, either bind a LOB data type or update the entire ADT.
SQL Apply may stop with the following error while an Oracle Data Guard configuration is in the middle of a rolling change operation initiated by the DBMS_ROLLING
package:
ORA-00600: internal error code, arguments: [kwqicarsm: rs obj #], []
Workaround: The DBMS_RULE_ADM
package is not supported in the context of the DBMS_ROLLING
package and should not be used to create or alter rules for Oracle Advanced Queuing (AQ) subscribers at the primary database while DBMS_ROLLING
is active.
Use DBMS_ROLLING.ROLLBACK
to roll back the rolling change operation in the Oracle Data Guard configuration. Retry the rolling change operation once you have ensured that DBAs or applications are not going to add or change rules associated with AQ subscribers for the duration of DBMS_ROLLING
operations.
SQL Apply does not support replication of a table with SYS.ANYDATA
column, if the SYS.ANYDATA
column contains multibyte characters.
SQL Apply aborts with the following error on a table with a Securefile LOB column:
ORA-600 [curr loc with no gather] [0x2B6D75918]
Workaround: Skip the table using DBMS_LOGSTDBY.SKIP
and restart SQL Apply.
SQL Apply does not support replication of a table with Abstract Data Type (ADT) columns when the type names (or the associated attributes) contain multibyte characters.
DBMS_LOGSTDBY.INSTANTIATE_TABLE
does not support tables with invisible columns.
For Oracle Text, indexes created with the FILTER BY
or ORDER BY
clause of the SQL CREATE INDEX
statement, DML statements on the columns specified in the FILTER BY
or ORDER BY
clause are not replicated at the logical standby. However, the indexes may not be properly maintained at the logical standby.
Workaround: Synchronize the indexes manually at the logical standby database.
This section describes known bugs for Oracle Enterprise Manager.
The Enterprise Manager Agent should use a dedicated server connection to connect to a CDB for monitoring.
Workaround: This can be configured by setting (SERVER=dedicated
) in the CONNECT_DATA
of the connect string for the Enterprise Manager Agent connection.
Oracle home is not updated in Enterprise Manager after a database upgrade to Oracle Database 12g Release 1 (12.1) with an older version of Enterprise Manager.
Workaround: Upgrade Enterprise Manager to 12cPS1 or above with Database Plugin 12.1.0.3.0 or above to support target upgrade OOB on database creation or deletion. And, upgrade or modify the target properties manually by editing the monitoring property (Oracle_home
) for the database and Listener target and change the Oracle home value from the old database home to the new 12.1 database home.
Database target addition, deletion, and upgrade are not supported with Enterprise Manager releases prior to 12cPS1 because these older releases of Enterprise Manager do not support web services.
Workaround: Upgrade Enterprise Manager to release 12cPS1 or above with Database Plugin 12.1.0.3.0 or above to support target addition and modification OOB on database creation, deletion and upgrade.
This section describes known bugs for Oracle OLAP.
If the database is installed using the seed provided in the installation kit, and the OLAP option is not selected, then either at the end of the installation or some time later, the OLAP Analytic Workspace and OLAP API components will be reported as invalid.
This will not affect the running of the instance in any way, other than the error messages.
Workaround: Do one of the following as a workaround:
Ignore the error.
Enable OLAP (or the offending option).
Create and use your own seed database that does not include OLAP.
This section describes known bugs for Oracle Real Application Clusters (Oracle RAC).
When upgrading from 11.2.x.x to 12.1.0.1, if any customized listener configuration is set (such as a remote listener), Database Upgrade Assistant (DBUA) will set it back to the default.
Workaround: Execute ALTER SYSTEM SET REMOTE_LISTENER=
<user_remote_listener_setting>
, ... SCOPE=BOTH
from SQL*Plus after the database upgrade.
When an Oracle RAC policy-managed database is created by the Database Configuration Assistant (DBCA), the EM Express URL displayed by the DBCA summary may not work. This can happen if the local node is not part of the server pool hosting the database. This issue happens only for policy-managed Oracle RAC databases.
EM Express is configured and accessible from nodes where database instances are running. It can also be accessed using the scan name.
Workaround: Use the scan name for the host name in the EM Express URL. For example, consider the following EM Express URL (where racnode1
is the node name):
https://racnode1.oracle.com:5500/em
You can specify the following (where scan1
is the scan name of the cluster):
https://scan1.oracle.com:5500/em
The Oracle Enterprise Manager Database Express (EM Express) URL may not work on an Oracle RAC node.
Workaround: This bug may be encountered during Oracle RAC installation. If the EM Express URL does not work on an Oracle RAC node, restart the Node Listener on that machine.
If an Oracle RAC Node Listener rejects the service registration from an instance on the same node, the rejection gets logged in the listener log file with TNS-01182
error.
Workaround: Use lsnrctl RELOAD
command from the operating system or restart the listener.
Using lsnrctl
on Grid home cannot connect to the Node Listener even it is running.
Workaround: Use the srvctl getenv listener
command to check the setting of TNS_ADMIN
of the corresponding listener resource. Usually, it is similar to the following:
<GIHOME>/network/admin/<listener_user_id>
Then, set the TNS_ADMIN
environment to that same value and rerun lsnrctl
after which lsnrctl
should able to connect to that listener.
When installing 12.1 Oracle Grid Infrastructure stack in IPv6 environments, there may be an issue in detecting the IPv6 network interfaces. This happens if there are no IPv4 interfaces or network interfaces which support both IPv4 or IPv6. This may cause the installer to fail to deploy Oracle Grid Infrastructure.
Workaround: Make sure to use network interfaces which support both IPv4 and IPv6 or activate a virtual IPv4 network interface. You can do this by performing the following command where net0
is the name of IPv4 network interface:
/sbin/ifconfig net0 up
When issuing the command srvctl stop listener -force
to stop an Oracle ASM listener on a node where an Oracle ASM instance is running, a failure may be encountered with the following message:
PRCR-1014 : Failed to stop resource ora.ASMNET1LSNR_ASM.lsnr PRCR-1065 : Failed to stop resource ora.ASMNET1LSNR_ASM.lsnr Cannot communicate with crsd
Workaround: If, as part of removing an Oracle ASM network, it is no longer required to run an Oracle ASM listener on the specific subnet. Use the following command:
srvctl update listener -listener <listener_name> -asm -remove
This command stops the Oracle ASM listener on all nodes it is running and also removes the Oracle ASM listener configuration.
Pre-11.2 listeners fail to start after an Oracle Grid Infrastructure downgrade.
Workaround: Manually backup listener.ora
from $db_home/network/admin
before you upgrade and restore it after you downgrade.
After CRS is restarted, disk group resources may be OFFLINE
even though they were mounted in Oracle ASM.
Workaround: Modify the disk group resource AUTO_START
attribute to always
. For example:
crsctl modify resource ora.<dgname>.dg -attr AUTO_START=always
Alternatively, you can accomplish the same thing by dismounting and mounting the disk group in Oracle ASM using SQLPLUS. For example:
ALTER DISKGROUP <dgname> DISMOUNT; ALTER DISKGROUP <dgname> MOUNT;
In 12.1, the default value for the SQLNET.ALLOWED_LOGON_VERSION
parameter has been updated to 11
. This means that database clients using pre-11g JDBC thin drivers cannot authenticate to 12.1 database servers unless the SQLNET.ALLOWED_LOGON_VERSION
parameter is set to the old default of 8
.
This will cause a 10.2.0.5 Oracle RAC database creation using DBCA to fail with the ORA-28040: No matching authentication protocol
error in 12.1 Oracle ASM and Oracle Grid Infrastructure environments.
Workaround: Set SQLNET.ALLOWED_LOGON_VERSION=8
in the $crs_home/network/admin/sqlnet.ora
file.
Use the workaround before running 10.2.0.5 DBCA to create a database using 12.1 Oracle ASM and Oracle Grid Infrastructure.
If you are using Oracle Grid Infrastructure and you want to create an Oracle RAC release 11.1.0.7 database, then you may need to increase the DBCA default for session processes. For Oracle Database 12c, DBCA sets the default value for processes to 300. In earlier releases, DBCA set the default value to 150.
Workaround: If you see the error message ORA-00018:maximum number of session exceeded
, then change the default value for session processes in DBCA to 300. DBCA will then successfully create the release 11.1.0.7 database to use with Oracle Grid Infrastructure release 12.1.
For installer invocation, DBCA in silent mode will display the following message and execution will stop after a validation warning. The default DBCA behavior is to stop after the following warning:
There are not enough servers available to allocate to this server pool, Database instances may not come up on specified cardinality. Do you want to continue?
If you click Yes
, the DBCA fails.
Workaround: Before starting the installer, ensure that there are a sufficient number of servers in the free server pool. The number of free servers should be more than or equal to the cardinality specified in the installer for configuring the policy-managed Real Application Clusters database. The status and membership details of server pools can be checked using the following command:
Grid_home/bin/crsctl status serverpool
Creating pre-11.2 Oracle RAC database in 12.1 Oracle Grid Infrastructure for a cluster environment using DBCA may fail with following messages.
When using a cluster file system as storage, you see the following message:
ORA-00119: invalid specification for system parameter REMOTE_LISTENER
When using Oracle ASM as storage, you see the following message:
DBCA could not startup the ASM instance configured on this node
Workaround: Apply the patch for this bug in pre-11.2 database home. This patch is needed for 10.2.0.4, 11.1.0.6 and 11.1.0.7 database releases. No patch is needed for release 10.2.0.5.
This section describes known bugs for Oracle SQLJ.
When connected to pluggable databases, online translation may give unexpected errors or warnings if the application contains calls to Oracle-specific packages and procedures.
Workaround: Perform the translation by connecting to the root database of the multitenant container database (CDB).
This section describes known bugs for Oracle Text.
The ORA-4036
error message is a known issue that affects customers in the very specific use-case scenario of creating a global CONTEXT
index in parallel with a local CONTEXT
index. Dropping and re-creating these indexes multiple times as well as enabling the BIG_IO
option are known to manifest the problem. The symptoms of the problem include increased use of handle leaks.
The BIG_IO
option of a CONTEXT
index uses SecureFiles for the TOKEN_INFO
column. When a CONTEXT
index is created with the BIG_IO
option, there is no check in place to make sure that the tablespace is Automatic Segment Space Management (ASSM). The TOKEN_INFO
column of the $I
table in the index is silently created with BasicFile.
Workaround: Ensure that the tablespace is set as ASSM before trying out the BIG_IO
option.
With the CURSOR_SHARING
parameter set to FORCE
, queries using the ctxfiltercache
operator involving save_score
and topN
will throw error DRG-10886
.
When the BIG_IO
option is specified and the AUTO_LEXER
type with the MIXED_CASE
attribute is set to YES
, the following error might be returned during index creation:
ORA-00060: deadlock detected while waiting for resource
Workaround: Either do not use the MIXED_CASE attribute set for AUTO_LEXER or, if it is required, BIG_IO
should not be specified.
Creating an index on a CTXSYS.CONTEXT
index using the preference BIG_IO
does not scale linearly with data size.
The LONG VARCHAR2
(VARCHAR2 > 4K
) feature is not supported with the CTXSYS.CONTEXT
index.
Using the STAGE_ITAB
and FORWARD_INDEX
attributes on the same CTXSYS.CONTEXT
index may cause internal errors.
This section describes known bugs for Oracle Universal Installer (OUI).
You should also review Section 3.1, "Compatibility, Upgrading, Downgrading, and Installation" for other issues related to installation and upgrades.
Users are not stopped from installing Oracle Database Client 12c Release 1 (12.1.0.1.0) or Oracle Database Examples 12c Release 1 (12.1.0.1.0) software, using the respective installers, into an existing Oracle home that is of a different version.
Workaround: Before installing release 12.1.0.1.0 Client and release 12.1.0.1.0 Examples software into an existing Oracle home, verify that the version of the Oracle Database server is also release 12.1.0.1.0.
When installing Oracle Grid Infrastructure, the Oracle Universal Installer (OUI) may hang and following error can be seen in log file:
Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: PermGen space
Oracle Grid Infrastructure 12c Release 1 (12.1) eliminates the need to allocate local storage space on each node for the Cluster Health Monitor (CHM) repository. In 12.1, this repository, now known as the Grid Infrastructure Management Repository (GIMR), resides in the same disk group as the Oracle Cluster Registry (OCR) and voting disk files. The required space for the GIMR depends upon the current and maximum size of the cluster as well as on the level of redundancy for this disk group. The required space available needs to be manually checked as explained in the "Requirements for Oracle Grid Infrastructure Shared File System Volume Sizes" section of the Oracle Grid Infrastructure Installation Guide. This space availability is not checked automatically as part of the Oracle Universal Installer (OUI) upgrade installation. If insufficient space is found, the upgrade will fail when trying to create the GIMR.
Workaround: The solution is to add additional disks to the disk group and retry the OUI step that creates the GIMR.
Mixed case host names are not supported by the Oracle Universal Installer (OUI) for Oracle RAC or Cluster Ready Services (CRS) homes.
The pound sign character (#
) should not be specified in the PDB name field in the installer.
Deinstalling the database may fail with the following error message if Oracle Grid Infrastructure and the database are installed with different users:
./runInstaller[192]: /tmp/deinstall_bootstrap/deinstallbootstrap.log: cannot create [Permission denied]
Workaround: Manually remove deinstall_bootstrap
and rerun the deinstallation to remove the Grid home.
During upgrade, when ignore unreachable nodes
is selected in the OUI and there are some nodes down, a force upgrade cannot be done if the nodes that were down come back up before the force upgrade command (for example, rootupgrade.sh -force
) completes.
Workaround: Make sure the nodes that were down remain down until the upgrade completes.
The Oracle Universal Installer (OUI) may fail to install Oracle Grid Infrastructure due to the allocation of too many shared memory segments. This problem is likely to occur only on the first start of the OUI after a server is started.
Workaround: Before finalizing the Oracle Grid Infrastructure installation (before clicking the Install button on the last page of the OUI dialog), issue an ipcs -m | wc -l
command on another terminal to check the number of allocated shared memory segments at this moment in time.
If the returned number of allocated shared memory segments significantly exceeds 500, cancel the current OUI installation and restart runInstaller
, because the installation is likely to fail. You can save the response file in order to resume the installation using a response file. Otherwise, you will have to reenter all of the required information during the dialog again. Since the problem is likely to occur only on the first start of the OUI after a server was started, restarting the OUI without restarting the server should solve the problem.
If the central inventory location is different on different nodes of a cluster, addnode.sh
does not update the inventory correctly on remote nodes of the cluster.
Workaround: Adding nodes to a cluster requires the central inventory location to be the same on all the nodes of the cluster. Please ensure that this is the case prior to running addnode.sh
.
If you install a 32-bit Oracle database and a 64-bit Oracle database in the same ORACLE_BASE
, it may lead to unexpected results when using the deinstallation tool to remove one of the databases. The deinstallation tool removes all of the Oracle homes under the ORACLE_BASE
if these Oracle homes do not use the same central inventory.
Workaround: Avoid using multiple central inventories. Do not use the same ORACLE_BASE
for 32-bit and 64-bit database installations or always perform the deinstallation from a 64 bit home.
The Oracle Universal Installer (OUI) runInstaller
script that resides in the Oracle home (ORACLE_HOME
/oui/bin/runInstaller
) cannot be used to install the Oracle Database 12c releases, Oracle Grid Infrastructure for a cluster, and Oracle Database Client.
Workaround: Use Oracle Universal Installer on the respective Oracle Database 12c product media to install each product.
This section describes known bugs for Oracle XML DB.
Using Transportable Tablespaces (TTS) to export or import tables with Binary XML data is not supported.
Workaround: Use the Oracle Data Pump conventional path to move data.
If you plug an Oracle Database 12c non-CDB database, which has an XMLType table with an XMLIndex defined, into an Oracle Database 12c CDB database and run the noncdb_to_pdb.sql script, the XMLIndex could become disabled.
Workaround: Manually enable the XMLIndex by issuing the following DDL:
ALTER INDEX <index_name> ENABLE;
Consider the following scenario:
On an 11.2.0.2 database, you create an XMLType table or a table with an XMLType column that is partitioned and then create a structured XMLIndex on the table. Next, you upgrade the 11.2.0.2 database to Oracle Database 12c or above. If you execute the ALTER TABLE EXCHANGE PARTITION
statement on one of the base table partitions with another partition or table that is created in the Oracle Database 12c database with the same structure and similar XMLIndex, then it will fail with the following error:
ORA-64123: XMLIndex DDL: failure of a recursive DDL ORA-14097: column type or size mismatch in ALTER TABLE EXCHANGE PARTITION
This is not an issue if your index was created on a non-11.2.0.2 database. 11.2.0.2 is the only version with this issue. Other versions like 11.2.0.1 and 11.2.0.3 do not have this issue.
Workaround: After upgrading to Oracle Database 12c or above, drop and re-create the structured XMLIndex on the table where the index was upgraded from 11.2.0.2.
When 32K VARCHAR
data type is enabled and XML storage is object-relational, UPDATEXML
or equivalent XQuery Update operation may run into a parser issue.
When 32K VARCHAR
data type is enabled and XML storage is object-relational, selecting the XMLType column directly may return incorrect data. For example:
SELECT xml_col FROM some_table p;
Workaround: Call the GETCLOBVAL()
function. For example:
SELECT p.xml_col.getclobval() FROM some_table p;
Prior to Oracle Database 12c Release 1 (12.1), when inserting an XML element without a name space into an XML document, the newly inserted element is assigned to the name space of the parent element if the default name space is defined in the parent element, which is not correct.
In Oracle Database 12c, the new element will be inserted with xmlns=""
.
An XML Query containing CLOB, BLOB
or NCLOB
data types as bind variables is not supported for logical standby, Oracle GoldenGate and XStream replication.
Workaround: Run the query using data types other than CLOB, BLOB
or NCLOB
.
For logical standby based schema registration replication, compatibility should be set to Oracle Database 12c or above. For XStream and Oracle GoldenGate, the schema has to be individually registered on each instance and replication is not supported. All of the procedures in DBMS_XMLSCHEMA
package are supported except COPYEVOLVE
and COMPILESCHEMA
.
Supplemental logging is unsupported for an XMLQuery update with variables bound to a REF
cursor.
Workaround: Before updating XMLType columns or attributes that need replicating, store the evaluation of REF
cursors in non-cursor variables, and then update the columns or attributes with these variables instead of the REF
cursors.
The EXCHANGE PARTITION
operation does not work for XMLType tables that have an XMLIndex structured component.
Workaround: To workaround this problem, take the following steps:
Before executing the EXCHANGE PARTITION
operation, issue the following call:
EXEC DBMS_XMLSTORAGE_MANAGE.EXCHANGEPREPROC(user, 'partitioned_myxml');
partitioned_myxml
is your partitioned XMLType table.
Execute the EXCHANGE PARTITION
operation. For example:
ALTER TABLE partitioned_myxml EXCHANGE PARTITION p1 WITH TABLE myxml;
After executing the EXCHANGE PARTITION
operation, call the following procedure:
EXEC DBMS_XMLSTORAGE_MANAGE.EXCHANGEPOSTPROC(user,'partitioned_myxml');
If the myxml
table also has a structured XMLIndex on it, you also need to execute the DBMS_XMLSTORAGE_MANAGE.EXCHANGEPREPROC
and DBMS_XMLSTORAGE_MANAGE.EXCHANGEPOSTPROC
procedures on myxml
table. For example:
Before executing the EXCHANGE PARTITION
operation, execute the following:
EXEC DBMS_XMLSTORAGE_MANAGE.EXCHANGEPREPROC(user, 'myxml');
After executing the EXCHANGE PARTITION
operation, execute the following:
DBMS_XMLSTORAGE_MANAGE.EXCHANGEPOSTPROC(user,'myxml');
An Oracle RAC system allows multiple concurrent database instances to share a single physical database. However, dispatches for Oracle XML DB in an Oracle RAC database do not listen on the virtual IPs.
Workaround: To enable Oracle XML DB to use TCP(S) on an Oracle RAC system, you must configure the TCP(S) dispatchers for each database instance of the cluster as follows (where SID
is the SID of the instance and HOST
is the host name for the physical database):
SID.dispatchers="(address=(protocol=tcps)(host=HOST-vip)(service=SIDxdb))"
For non-secure dispatchers (TCP, not TCPS), use tcp
in the command instead of tcps
.
This section describes known bugs for Oracle Recovery Manager (RMAN).
A new feature was added in Oracle Database 12c Release 1 (12.1) to support change tracking across resetlogs during the execution of an ALTER DATABASE OPEN RESETLOGS
statement. This is achieved by deleting bitmaps that are not required because they cover changes that were made after the specified resetlogs point-in-time. There is an issue with the bitmap deleting that can cause error ORA-600 [krccchs_1]
during OPEN RESETLOGS
.
Workaround: Disable and reenable change tracking. You must disable change tracking before executing the ALTER DATABASE OPEN RESETLOGS
statement, and then re-enable change tracking after the open resetlogs operation is complete.
In order to backup a database in NOARCHIVELOG
mode, the database must be cleanly shutdown and then started in a mounted state.
When a multitenant container database (CDB) is in NOARCHIVELOG
mode and the root is open, an RMAN backup will fail (as expected), but will still generate backup pieces. These backup pieces are not usable for CDB or PDB recovery because they were generated while the CDB was in NOARCHIVELOG
mode and open.
Workaround: Use one of the following as a workaround to this situation:
Ensure CDB is cleanly shutdown and then started in a mounted state before taking a backup.
Ensure CDB is in ARCHIVELOG
mode before taking backup.
Note that the unusable backups originally created should be manually deleted using RMAN.
This section describes vendor and operating system known bugs.
A connect using SCAN
and EZCONNECT
on one client machine can be requested to use a specific SCAN
listener. Therefore, load balancing by round-robin DNS is not possible.
Workaround: Connect to a database using the following configuration specifying LOAD_BALANCE=on
in tnsnames.ora
:
ORCL = (DESCRIPTION = (LOAD_BALANCE=on) (ADDRESS = (PROTOCOL = TCP)(HOST = stscan1)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = srv.world) ) )