Relaxed Code Page Validation
Your environment may require you to process data from different sources using character sets from different languages. For example, you may need to process data from English and Japanese sources using the same PowerCenter repository, or you may want to extract source data encoded in a Unicode encoding such as UTF-8. You can configure the PowerCenter Integration Service for relaxed code page validation. Relaxed code page validation enables you to process data using sources and targets with incompatible code pages.
Although relaxed code page validation removes source and target code page restrictions, it still enforces code page compatibility between the PowerCenter Integration Service and PowerCenter repository.
Note: Relaxed code page validation does not safeguard against possible data inconsistencies when you move data between incompatible code pages. You must verify that the characters the PowerCenter Integration Service reads from the source are included in the target code page.
Informatica removes the following restrictions when you relax code page validation:
- •Source and target code pages. You can use any code page supported by Informatica for your source and target data.
- •Session sort order. You can use any sort order supported by Informatica when you configure a session.
When you run a session with relaxed code page validation, the PowerCenter Integration Service writes the following message to the session log:
TM_6185 WARNING! Data code page validation is disabled in this session.
When you relax code page validation, the PowerCenter Integration Service writes descriptions of the database connection code pages to the session log.
The following text shows sample code page messages in the session log:
TM_6187 Repository code page: [MS Windows Latin 1 (ANSI), superset of Latin 1]
WRT_8222 Target file [$PMTargetFileDir\passthru.out] code page: [MS Windows Traditional Chinese, superset of Big 5]
WRT_8221 Target database connection [Japanese Oracle] code page: [MS Windows Japanese, superset of Shift-JIS]
TM_6189 Source database connection [Japanese Oracle] code page: [MS Windows Japanese, superset of Shift-JIS]
CMN_1716 Lookup [LKP_sjis_lookup] uses database connection [Japanese Oracle] in code page [MS Windows Japanese, superset of Shift-JIS]
CMN_1717 Stored procedure [J_SP_INCREMENT] uses database connection [Japanese Oracle] in code page [MS Windows Japanese, superset of Shift-JIS]
If the PowerCenter Integration Service cannot correctly convert data, it writes an error message to the session log.
Configuring the PowerCenter Integration Service
To configure the PowerCenter Integration Service for code page relaxation, complete the following tasks in the Administrator tool:
- •Disable code page validation. Disable the ValidateDataCodePages option in the PowerCenter Integration Service properties.
- •Configure the PowerCenter Integration Service for Unicode data movement mode. Select Unicode for the Data Movement Mode option in the PowerCenter Integration Service properties.
- •Configure the PowerCenter Integration Service to write to the logs using the UTF-8 character set. If you configure sessions or workflows to write to log files, enable the LogsInUTF8 option in the PowerCenter Integration Service properties. The PowerCenter Integration Service writes all logs in UTF-8 when you enable the LogsInUTF8 option. The PowerCenter Integration Service writes to the Log Manager in UTF-8 by default.
Selecting Compatible Source and Target Code Pages
Although PowerCenter allows you to use any supported code page, there are risks associated with using incompatible code pages for sources and targets. If your target code page is not a superset of your source code page, you risk inconsistencies in the target data because the source data may contain characters not encoded in the target code page.
When the PowerCenter Integration Service reads characters that are not included in the target code page, you risk transformation errors, inconsistent data, or failed sessions.
Note: If you relax code page validation, it is your responsibility to ensure that data converts from the source to target properly.
Troubleshooting for Code Page Relaxation
- The PowerCenter Integration Service failed a session and wrote the following message to the session log:
TM_6188 The specified sort order is incompatible with the PowerCenter Integration Service code page.
If you want to validate code pages, select a sort order compatible with the PowerCenter Integration Service code page. If you want to relax code page validation, configure the PowerCenter Integration Service to relax code page validation in Unicode data movement mode.
- I tried to view the session or workflow log, but it contains garbage characters.
The PowerCenter Integration Service is not configured to write session or workflow logs using the UTF-8 character set.
Enable the LogsInUTF8 option in the PowerCenter Integration Service properties.