Release Notes for Oracle Data Integrator
It includes the following sections:
To view the new features and significant product changes for Oracle Data Integrator in the Oracle Fusion Middleware 12 c release, see the New and Changed Features for Release 12c (22.214.171.124.6) section in Administering Oracle Data Integrator.
A ReadMe file is included in your distribution. It is located in the top level directory of the zip. The ReadMe file includes information about this release (features, prerequisites, install/uninstall instructions). You must use the ReadMe file to install ODI 126.96.36.199.6. Please read the entire ReadMe file before proceeding.
This section contains information on the following:
Accessibility settings can only be applied to the components whose accessibility settings are not managed at the ADF level. 
On Windows operating systems only the user who installed ODI can start ODI studio. No other user has privileges to start ODI Studio. 
When you login to ODI Console and access your work repository location through Microsoft Edge 20.10240 and Microsoft Edge 25.10586.0.0 browsers of Windows 10 Enterprise operating system and try to open/view any tabs, you do not have an option to close the opened/viewed tabs. For Example — When you open any of the knowledge module(s) from the path Design Time -> Global Objects -> Global Knowledge Modules, you do not have an option to close the opened knowledge module tab through MS Edge.
This section contains information on the following issues:
Note:Upgrading repositories using file import/export option is not supported. You must use the Upgrade Assistant to upgrade the repositories.
As part of the 12c upgrade, SAP KMs will use GUID based program names and function group names. Due to this SAP extraction programs either need to be redeployed or all interfaces must have the old program name set. 
The UI mode of 11g RKM SAP ERP and 11g RKM SAP BW do not work in ODI 12c legacy mode. Either use non-UI mode or upgrade to latest SAP connector version. 
The selected database is more recent than the supported list of certified databases for this version of Oracle Fusion Middleware. For the most recent list of certified databases, refer to the Supported System Configurations information on the Oracle Technology Network.
Click Ignore and continue with the installation process.
The main intention of displaying this message, is to inform you about the selected database version and not to stop/quit the installation process. 
999 is a prohibited master repository ID and should not be used. 
In the Oracle Fusion Middleware Upgrade Assistant, when the All Schemas Used by Domain option is selected, the Supervisor credentials for ODI are not pre-populated in the first instance as the domain does not contain them. If there are multiple ODI schemas, the Upgrade Assistant populates the user entry using the first set of credentials. 
Users that are to be assigned the VCS Admin or Release Manager role have to be assigned the
If these profiles are renamed or duplicated, the VCS Admin and Release Manager roles will not function. 
A job cannot be scheduled to OracleDIAgent when the client (studio and agent) and server (repository) are set to different time zones. 
To sync the time zone for studio, perform the following steps:
Go to Studio home and edit the studio configuration file
Set the AddVMOption
-Duser.timezone to the repository-based time zone.
To sync the time zone for agent (managed server), perform the following steps:
Modify the WebLogic domain environment settings for your domain in the following files:
On UNIX platforms:
On Windows platforms:
Within the file, edit the EXTRA_JAVA_PARAMETERS environment variable definition by adding the following Java argument:
For example, on Windows, set:
set EXTRA_JAVA_PARAMETERS=%EXTRA_JAVA_PARAMETERS% -Duser.timezone=GMT
If source database of ODI is set to 12.1, then some queries involving hash joins may return wrong results in cases where the hash join receives rowsets as input and produces one row at a time as output. The query contains a HASH JOIN and the query plan (using ADVANCED format flag as shown below)shows a hash join that does not have the "(rowset=...)" indication in the projection information section whereas the right child of the hash join does have "(rowset=...)" in its projection information.
select plan_table_output from table (dbms_xplan.display_cursor('&sql_id', null,'ADVANCED')); Plan hash value: 3740981006 ---------------------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ---------------------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1597 | 1606 | 8 (1)| 00:00:01 | ... |* 4 | HASH JOIN | | 1597 | 67074 | 8 (0)| 00:00:01 | | 5 | TABLE ACCESS FULL | K_POSITION | 786 | 16506 | 4 (0)| 00:00:01 | | 6 | TABLE ACCESS FULL | KW_POSITION | 1597 | 33537 | 4 (0)| 00:00:01 | ---------------------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 4 - access("KWP"."KONTOPOSITION_FK"="KP"."KONTOPOSITION_ID") Column Projection Information (identified by operation id): ----------------------------------------------------------- 4 - (#keys=1) "KP"."POSIT_FK"[NUMBER,22], "KP"."SOND_FK"[NUMBER,22], "KWP"."WAE"[VARCHAR2,20] ------>> No rowset in HASH JOIN Column Projection information 5 - (rowset=256) "KP"."KONTOPOSITION_ID"[NUMBER,22], "KP"."SOND_FK"[NUMBER,22], "KP"."KONTO_FK"[NUMBER,22] 6 - (rowset=256) "KWP"."POSIT_FK"[NUMBER,22], ------>> (rowset=256) information "KWP"."WA"[VARCHAR2,20]
To overcome this issue you can upgrade your database to DB 12.2 or update the patch 12.1 using DB PSU 188.8.131.52.160419 or patch from DB Bug 22173980. 
When you follow the below steps:
Create connection to GIT/Subversion
Add mapping to VCS
and then terminate ODI studio and start again to create a version for mapping including dependencies, you get a null pointer error.
To overcome this issue, as a workaround
Navigate to Team -> Settings - > Edit Connection and click OK
The wallet password dialog appears.
Enter the wallet password and then create version with dependency.
You can successfully create version for mapping including dependencies. 
The Password field that is specified while creating a new data server in Topology in ODI Studio must not exceed 35 characters. For example, if the password for a technology is ‘Xcter23lnbvWE3478klnksddchv89$%jewwoSD983e’, then it will consider only the first 35 characters (i.e. ‘Xcter23lnbvWE3478klnksddchv89$%jeww’). This is required when creating a data server for technologies like Salesforce, as the passwords here are generated from the backend and are generally long. Also, an error message is displayed if we specify more than 35 characters.
This section contains information on the following issues:
Preferences that are not used in ODI are getting picked up from the JDeveloper IDE by default and these features appear in ODI Studio > Tools > Preferences. 
If you attempt to duplicate a newly created datastore with attributes without first closing the tab of the newly created datastore, the attributes are not copied.
As a workaround, save and close the newly created datastore with attributes before selecting Duplicate Selection. 
If you attempt to generate a scenario for a map using the client library package, the following error is displayed:
As a workaround, copy
MW_HOME/oracle_common/modules/groovy-all-2.3.7.jar locally and add the jar file to the classpath. 
Non-ASCII characters in a Hive table that is based on a utf-8 encoded file are not displayed properly. As a workaround, specify
-J-Dfile.encoding=utf8 and start ODI Studio to view Non-ASCII characters in a Hive table. 
You are not allowed to edit the expanded map of a dimension or cube component. The changes done in expanded map is not persisted and are not saved. 
In the Dimension Editor when you are navigating from Levels Table -> Level Attributes Table, the SCD2 (Slowly Changing Dimensions) Setting drop-down list displays Current Record, as one of its values. The current record value is not used in the current built-in pattern of ODI. 
This section contains information on the following issues:
When executing a mapping using LKM Hive to File Direct, it fails and the following error is displayed:
ODI-1227: Task Unload Hive data-LKM Hive to File Direct- fails on the source connection HIVE_DATA_SERVER
This is caused due to Hive bugs, HIVE-5672 and HIVE-6410, which cause the INSERT OVERWRITE statement to fail when writing to HDFS. Please note that these Hive bugs are already fixed and the issue is resolved when upgraded to a recent version of CDH and Hortonworks. 
Many KMs that use OdiOSCommand use the
ERR_FILE parameters to redirect output into log files.The directory for such files is based on the KM option
TEMP_DIR, which uses a default value of
System.getProperty("java.io.tmpdir"). This causes ODI on Oozie to use an Oozie job temporary directory, which gets cleaned up on job completion, irrespective of whether the job was successful. This results in the log files not being available after execution.
As a workaround, when executing on Oozie, overwrite the KM option
TEMP_DIR to a specific temporary directory. 
Oozie initialization fails and the following error is displayed:
java.io.IOException: E0504 : App directory <dir_name> doesn't exist OR ODI-1028: There are issues with the Log Retriever components. No Log Retriever flow with name <name> is running.
The issue occurs on pure CDH5.4.0+ pseudo/multi node clusters.
As a workaround,
Make sure that oozie share lib is already created using the following command:
oozie-setup sharelib create -fs hdfs:///user/oozie -locallib <path to local folder [oozie-sharelib-yarn]>
Folder oozie-sharelib-yarn is local to the oozie setup. After creating the sharelib, you can verify the sharelib on HDFS at the location hdfs:///user/oozie/share/lib/lib_<timestamp>
Add the following properties to oozie-site.xml. These properties are needed for Oozie to obtain the hadoop configuration files to access HDFS. In the first property value, add the path after "*="
<property> <name>oozie.service.HadoopAccessorService.hadoop.configurations</name> <value>*=<replace_this_with_path_to_hadoop_configuration_folder For Example:/etc/hadoop/conf></value> <value>*=<replace_this_with_path_to_hadoop_configuration_folder For Example:/etc/hadoop/conf></value> </property> <property> <name>oozie.service.WorkflowAppService.system.libpath</name> <value>hdfs:///user/oozie/share/lib</value> </property>
Restart your oozie and hadoop services. 
There is an issue with the
OdiLogRetriever.properties file and the
oozie.coord.application.path value does not get appended to it and the following error is displayed: 
E0504: App directory doesn't exist
KMs using SQOOP fail when executed on Oozie on a CDH version prior to 5.4.1.
As a workaround, set KM option
--skip-dist-cache. Another workaround for this issue is to upload all SQOOP jars into the HDFS directory reported in
hdfs dfs -mkdir -p /opt/cloudera/parcels/CDH-5.3.0-1.cdh5.3.0.p0.30/jars hdfs dfs -copyFromLocal /opt/cloudera/parcels/CDH-5.3.0-1.cdh5.3.0.p0.30/jars/* /opt/cloudera/parcels/CDH-5.3.0-1.cdh5.3.0.p0.30/jars
Teradata and SQL Server do not allow ORDER BY in subqueries. [20873100, 20816875]
When you execute Pig or Oozie workflows through ODI, you may encounter warning messages such as, Failed to set setXIncludeAware(true) for parser, regarding xml parsing failures in the ODI logs or studio console. This error occurs when JAVA xerces parser gets used for PIG execution, as the default implementation does not support XIncludeAware feature in xml parsing.
As a workaround, add xmlparserv2.jar in classpath of the Pig Dataserver. 
When specifying constant expressions, the datatype for the constant must exactly match the attribute datatype because Pig does not provide implicit type conversion. For example, if the attribute is defined as DOUBLE, the constant expression for this attribute should be set to 999.0 instead of 999. 
When a mapping is processed using Pig and there is an Aggregate component in the Pig staging area, the Having clause must be set differently from similar mappings for SQL-based technologies. 
When using the Aggregate component in Pig staging, you cannot specify a complex expression in an aggregate function, for example,
SUM(source.col1 + source.col2). This kind of aggregation is called "complex aggregation" and Pig Latin does not support this. If complex expression is needed, the Expression component must be added to the mapping ahead of the Aggregate component. 
The Mapping Editor may not correctly list the imported Template IKMs for selection. To list the imported IKMs, you must change the Target Integration type from its default (Control Append) to either Incremental Update or None. 
In the Spark project, if the source file uses File technology, ODI converts the Date into a string datatype. This may cause the Date comparison to fail. 
When executing a mapping, it may fail at the Create Work View task and the following error may be displayed:
ODI-1228: Task Create work view-LKM File to Oracle (EXTERNAL TABLE)- fails on the target connection SVR2_ORACLE. Caused By: java.sql.SQLSyntaxErrorException: ORA-00955: name is already used by an existing object
This happens when the work table name is truncated to meet the maximum length specified in Oracle DB. To resolve this issue, check the Use unique Temporary Object Names option in the Physical Mapping tab. 
When a mapping is created with Oracle as source and Oracle as target using a Distinct component and the XKM SQL Distinct is selected in the DISTINCT node, the mapping fails and the following error is displayed:
The physical node DISTINCT_ cannot be supported by technology Oracle on execution unit src_UNIT of mapping Mapping New_Mapping owning folder=ODIOGG.First Folder
To resolve this issue, upgrade the topology information so Support Distinct Operator is set to
The UNION Pig operator uses the following modifiers to specify the uniqueness characteristic: 
unspecified – Perform a DISTINCT operation on output
DISTINCT – Perform a DISTINCT operation on input, but not output
ALL – Do not perform a DISTINCT operation on input or output
When creating a Complex File dataserver, the log level (ll) and log file (lf) properties are not displayed in the Properties tab. 
The Hive datatype, BinaryType, is not supported in Spark 1.1. When using LKM Hive to Spark with Spark 1.1 the following error is displayed in the Spark execution log: [20260906, 20391714]
HIVE ValueError: not supported type: <type 'bytearray'>
The following Hive complex datatypes are not supported:
Using these complex datatypes causes an unknown issue. [20141453, 20391743]
It is recommended to run Spark applications on YARN, as ODI supports only yarn-client and yarn-cluster mode executions along with a runtime check. Please switch to YARN execution, if you have been using other Spark execution modes. 
If switching to YARN execution mode is not possible or you wish to continue with unsupported Spark execution modes, the following DataServer property must be added to the Spark DataServer:
odi.spark.enableUnsupportedSparkModes = true
Also, please note that no Support Requests can be raised regarding the unsupported Spark execution modes.
SchemaMapmust not be used in YARN-client mode. Due to conflicting owners in the YARN-client execution model, the WebLogic JDBC Driver for Cassandra will encounter file permission problems and displays errors messages such as:
py4j.protocol.Py4JJavaErrorpy4j.protocol.Py4JJavaError: An error occurred while calling o140.jdbc. : java.sql.SQLException: [FMWGEN][Cassandra JDBC Driver][Cassandra]Unable to create local database file: $$ The cause: $$
This error is often caused by the driver not having write access to the target directory. 
Due to limitations in Spark 1.6, the following Oracle datatypes cannot be handled using
LKM SQL to Spark or
LKM Spark to SQL  :
REALwill cause the following
(ValueError(u'Could not parse datatype: decimal(38,-127)',)
Use of extended
INTERVAL datatypes such as:
TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH LOCAL TIME ZONE, INTERVAL DAY TO SECOND, INTERVAL YEAR TO MONTH will cause the following errors:
py4j.protocol.Py4JJavaErrorpy4j.protocol.Py4JJavaError: An error occurred while calling o43.jdbc.: java.sql.SQLException: Unsupported type -101
If the mapping execution in Pig fails and the
Unable to store alias error is displayed, the
pig.optimizer.rules.disabled property for the Pig server should be set to
By default, all loaded KMs in the repository are replaced during repository upgrade, irrespective of whether they are modified or not. Do not upgrade the KMs during repository upgrade.
The following are the workarounds to upgrade the KMs:
If you have SAP KMs, you must not upgrade the KMs during repository upgrade. The new SAP KMs require new ODI SAP components. Using new SAP KMs with old ODI SAP components causes any SAP mappings to fail.
As a workaround, uncheck Replace KMs with Mandatory Updates when upgrading the ODI repositories. To upgrade SAP KMs, follow the upgrade instructions given in the Application Adapters Guide for Oracle Data Integrator for the respective ODI SAP adapter.
If you have any custom KMs, the customizations are lost if you upgrade the KMs during repository upgrade.
As a workaround, uncheck Replace KMs with Mandatory Updates when upgrading the ODI repositories. After you upgrade the repositories, manually replace only those KMs that you want to upgrade.
Due to a bug in Javadoc generation, 41 internal classes were erroneously published in the 12.1.2, 12.1.3, and 184.108.40.206.1 public SDK API Javadocs. These classes were intended for internal use and have been removed from the 12c public SDK APIs. The classes removed from the 12c Javadocs are listed below and if you are using any of these classes in your program, correct your program and remove their usage: 
ODI File Driver does not have Erroneous Records Handling capabilities in releases 11g and 12c. The section on Erroneous Records Handling has been removed from ODI documentation for releases 11g and 12c. This will, however, be restored in a future release. 
After installing Oracle Data Integrator 12c (220.127.116.11), perform the following steps:
Once the ODI repository is upgraded it cannot be reverted back even if you remove the patch. So make sure you make a proper backup of your existing ODI repository so that it can be restored if you remove this patch in the future for any reason.
For UNIX platforms:
system18.104.22.168.0 in your Home directory and remove it.
rm -rf $HOME/.odi/system22.214.171.124.0
For Windows platforms:
system126.96.36.199.0 in your Home directory and remove it.
For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.
Access to Oracle Support
Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.
Oracle Fusion Middleware Release Notes for Oracle Data Integrator, 12c (188.8.131.52.6)
Copyright © 2010, 2018, Oracle and/or its affiliates. All rights reserved.
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.
If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:
U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.
This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.
This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.