2.13.9 Oracle Database Enterprise Edition Known Bugs

These are known bugs for Oracle Database Enterprise Edition in Oracle Database 12c Release 2 (12.2).

2.13.9.1 Bug 25376799

When upgrading the database to release 12.2 and then downgrading back to the original release,  the Oracle XML DB (XDB) component might be invalid with some invalid objects. For example:

OBJECT_NAME OWNER
DBMS_SODA_ADMIN XDB
DBMS_SODA_ADMIN XDB
DBMS_SODA_ADMIN PUBLIC
DBMS_SODA_DML XDB
DBMS_SODA_DML XDB
DBMS_SODA_UTIL SYS
DBMS_SODA_UTIL SYS

Workaround:

Drop the invalid objects by issuing the following statements under SYS:

drop public synonym DBMS_SODA_ADMIN;
drop package XDB.DBMS_SODA_ADMIN;
drop package SYS.DBMS_SODA_UTIL;
drop package XDB.DBMS_SODA_DML;

Then run @utlrp to revalidate XDB after dropping the invalid SODA objects.

2.13.9.2 Bug 24647145

Starting in Oracle Database 12c Release 2 (12.2), context indexes can create a table that did not exist in earlier releases. If you use Data Pump to import a context index created prior to release 12.2 into release 12.2 or later, then the new context index table is created in the system tablespace. If you later try to use transportable tablespace to move the context index, you get the following error:

ORA-39932: Extensible Index <index name> not fully contained in the transportable set

Workaround:

For transportable tablespace to work, the table that lives in the SYSTEM tablespace needs to be moved to the tablespace where the rest of the index tables reside. Then, the index on that internal table needs to be rebuilt. To find tables that are created by context indexes that prevent a transportable tablespace operation because they are in the SYSTEM tablespace, execute the following query:

SELECT t1.table_name, t2.index_name FROM user_tables t1, user_indexes t2 WHERE t1.table_name = t2.table_name AND t1.table_name LIKE 'DR$index_name%$U' AND t1.tablespace_name='SYSTEM';

Then, for all tables returned by this query (there can be more than one for a partitioned index), do the following:

ALTER TABLE table_name MOVE TABLESPACE tablespace_name

tablespace_name is the name of the new tablespace for the table. For all of the indexes returned by this query, execute the following:

ALTER INDEX index_name REBUILD;

2.13.9.3 Bug 24484204

Analytic view queries using bind variables or that have asymmetric predicates are slow. The typical example of the latter is a query with predicates that span dimensions. For example, (Year, Region) as in ('1998','EAST') or in ('1999', 'WEST').

Workaround:

To workaround this problem, disable the join back optimization by specifying ALTER SESSION SET _hcs_no_av_jback_opt = TRUE.

2.13.9.4 Bug 24477640

Running an analytic view (AV) query that includes an AV calculated measure with a CASE statement yields an ORA-00600 error.

Workaround:

Specify the ALTER SESSION SET _hcs_no_sp_jback_opt = TRUE statement. Or, use other constructs in your calculation definition.

2.13.9.5 Bug 24459231

Rapid Home Provisioning Control (RHPCTL) utility commands do not work when the Rapid Home Provisioning Server (RHPS) is started the first time after configuring it.

Workaround:

Restart the RHPS by issuing the commands srvctl stop rhpserver and then srvctl start rhpserver.

2.13.9.6 Bug 24322363

Software-only images are the only type of images supported with persistent home paths provisioned using Rapid Home Provisioning (RHP). Images created from existing working copies or homes are not supported for provisioning homes with a persistent home path.

Workaround:

Use images created from software-only installations.

2.13.9.7 Bug 24291322

Symbolic links are not allowed in the directory object paths or filenames when opening BFILEs. The entire directory path and filename is checked and the following error is returned if any symbolic link is found:

ORA-22288: file or LOB operation FILEOPEN failed soft link in path

Workaround:

If the database directory object or filename you are trying to open contains symbolic links, change it to provide the real path and filename.

2.13.9.8 Bug 23713504

The service-oriented buffer cache access optimization feature continuously monitors data block reads from disk or inter-node block transfers and performs data-dependent caching using this information. The data-dependent caching does not work in the case of service relocation if there are no data block reads or transfers in the recent past. This can happen if all of the blocks queried are already in the buffer cache and, therefore, no new blocks are read or transferred.

Workaround:

None.

2.13.9.9 Bug 23569490

If you have a large number of collections and are working with pre-12.2 clients, you need a larger object cache, due to a change in snapshot size and thus a need for collection image conversion.

Workaround:

The object cache size can be set using the OBJECT_CACHE_OPTIMAL_SIZE initialization parameter. This is set to a low value by default.

Based on the number of collections and object types used in the application, the size required can be found by using this formula:

max(20K * Number of Collection Types, 5K * Object type)

2.13.9.10 Bug 22022250

If an attempt is made to compile an editioned type object that depends on a second type object that is currently invalid, and the second invalid type object is currently being inherited from an earlier edition, this action can result in the second type object incorrectly continuing to be inherited from the earlier edition. Oracle Database fails to determine that the invalid type object needs to be actualized into the current edition.

Workaround 1:

Preemptively, before attempting DDL on a type object, you must verify that all of the type objects on which the target object currently depends are already valid or are actually in the current edition.

Workaround 2:

If preemptive prevention is not taken, then the only workaround is to determine which objects are being incorrectly inherited from an ancestor edition and then to manually compile those objects in the correct editions.

2.13.9.11 Bug 21546668 and Bug 24370018

Upgrading Oracle E-Business Suite (Oracle EBS) 12.2 from Oracle Database 11g Release 2 (11.2.0.4) to 12.2, returns the following error in the upgrade file:

Identifier CATALOG 15-08-03 04:29:22
SCRIPT    = [/ade/b/3767230542/oracle/rdbms/admin/sqlsessend.sql]
ERROR     = [ORA-22348: The object type DDL is not supported in Editioned schema]
STATEMENT = [alter type sql_plan_row_type modify attribute (
  object_owner  VARCHAR2(128),
  object_name   VARCHAR2(128),
  object_alias  VARCHAR2(261),
  qblock_name   VARCHAR2(128))
cascade]
---------------------------------------------------------------------------

---------------------------------------------------------------------------
Identifier CATPROC 15-08-03 04:33:04
SCRIPT    = [/ade/b/3767230542/oracle/rdbms/admin/sqlsessstart.sql]
ERROR     = [ORA-22348: The object type DDL is not supported in Editioned
schema]
STATEMENT = [alter type sql_plan_row_type modify attribute (
  object_owner  VARCHAR2(128),
  object_name   VARCHAR2(128),
  object_alias  VARCHAR2(261),
  qblock_name   VARCHAR2(128))


DIAGNOSTIC ANALYSIS:
---------------------------------------------------------------------------
from catupgrd840.log

04:29:22 SQL> alter type sql_plan_stat_row_type compile specification reuse settings;

Type altered.

Elapsed: 00:00:00.03
04:29:22 SQL>
04:29:22 SQL> alter type sql_plan_row_type modify attribute (
04:29:22   2    object_owner  VARCHAR2(128),
04:29:22   3    object_name   VARCHAR2(128),
04:29:22   4    object_alias  VARCHAR2(261),
04:29:22   5    qblock_name   VARCHAR2(128))
04:29:22   6  cascade;
alter type sql_plan_row_type modify attribute (
*
ERROR at line 1:
ORA-22348: The object type DDL is not supported in Editioned schema

........


Elapsed: 00:00:00.07
04:33:04 SQL>
04:33:04 SQL> Rem alter sql_plan_row_type for long identifiers
04:33:04 SQL> alter type sql_plan_row_type modify attribute (
04:33:04   2    object_owner  VARCHAR2(128),
04:33:04   3    object_name   VARCHAR2(128),
04:33:04   4    object_alias  VARCHAR2(261),
04:33:04   5    qblock_name   VARCHAR2(128))
04:33:04   6  cascade;
alter type sql_plan_row_type modify attribute (
*
ERROR at line 1:
ORA-22348: The object type DDL is not supported in Editioned schema

Workaround:

Drop the types causing the error in the environment being upgraded before the database upgrade. The types are auto-regenerated later. Run the following PL/SQL commands:

declare
  cursor c1 is
    select u.name, o.name
    from sys.type$ t, sys.obj$ o, sys.user$ u
    where o.type# = 13
          and bitand(t.properties, 8388608) = 8388608 --transient cursor types
          and o.oid$ = t.tvoid
          and o.spare3 = u.user#
          and bitand(u.spare1, 16) = 16;
  type_owner varchar2(128);
  type_name  varchar2(128);
begin
  -- Drop system generated editioned transient cursor types
  open c1;
  loop
    fetch c1 into type_owner, type_name;
    exit when c1%NOTFOUND;
    begin
      EXECUTE IMMEDIATE 'drop type "' || type_owner || '"."' ||
                        type_name || '" force';
    exception
      when others then
        null;
    end;
  end loop;
  close c1;
exception
  when others then
    null;
end;
/