My Oracle Support Banner

DBMS_XMLGEN.CONVERT Function Generates Corrupted Output For Text With Non-ASCII Symbols (Doc ID 2210588.1)

Last updated on FEBRUARY 11, 2019

Applies to:

Oracle Database - Standard Edition - Version 12.1.0.2 and later
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Backup Service - Version N/A and later
Oracle Database Cloud Service - Version N/A and later
Information in this document applies to any platform.

Symptoms

DBMS_XMLGEN.CONVERT function generates corrupted output when resulting xml size is greater than 256K

For example
* Database is using AL32UTF8 character set.
* Generated output has size of more than 128k bytes.
* Input text contains non-ASCII symbols (i.e. symbols with codes higher that 127, which are represented as multi-byte sequences in UTF-8).

Without <Patch 21424376> corrupted data is generated for all texts with size greater than 128k. If <Patch 21424376> is installed, then only data with non-ASCII symbols gets corrupted.

Here is the simple test case which demonstrates the problem - result of SQL query with non-ASCII symbols gets converted to XML text, then processed by XMLGEN and then passed to xmlparse function:

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.