Xmlparsing is different in 11g from 10g (文档 ID 1515401.1)

Applies to:

Oracle Database - Enterprise Edition - Version 11.2.0.1 and later

Information in this document applies to any platform.

Symptoms

While reading content from xml using xmlparser / xmldom which has been working fine in Oracle 10.2.0.4, once upgraded to Oracle 11.2.0.1, using the same code and xml file, it will return incorrect content from xml.


Example: For example parsing an xml file we observed that some lines are trimmed to the next line like below:


10g output: field_desc = [BEGIN]This is a sample text which gets trimmed/truncated to next line.This is a sample text which gets trimmed/truncated to next line.[END]


11g output: field_desc = [BEGIN]This is a sample text which gets trimmed/truncated to next line.This

is a sample text which gets trimmed/truncated to next line.[END]


Changes

 Upgrade from 10g to 11gR2.

Cause

In 10g the xquery engine is Java based whereas in 11g, the xquery engine is C based XVM.


 

Solution

We can revert to using 10g parser by setting the below event:

alter system set event ="31156 trace name context forever, level 0x400" scope=spfile;

Note: The instance must be restarted for the events to take effect. This is necessary because we are specifying "scope=spfile".