XML input stage issue

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
synsog
Premium Member
Premium Member
Posts: 232
Joined: Sun Aug 01, 2010 11:01 pm
Location: Pune

XML input stage issue

Post by synsog »

From past 3yrs, our environment is on v8.7 ( DEV, QA, PROD). We started upgrade process to 11.3. We are facing issues with parallel jobs which interacts with xml's. Source of XML's is DB2 table. Getting errors

Fatal Error: Fatal: XML input document parsing failed. Reason: Xalan fatal error (publicId: , systemId: , line: 14, column: 7001):
DSTAGE-XMLREADER-0041`:`Xalan fatal error (publicId: , systemId: , line: 14, column: 7001):

When we copied the XML's to local folder and modified the XML input stage settings to "XML URL/Filepath", the job is working fine. But when it is reading from Db2 table, throwing errors. We checked DSN's , UVConfig file. We are testing the jobs on 11.3 QA box.

These XML jobs are on PROD working fine from past 3yrs.

What could be the reason on 11.3 box?
Suggestion or Guidance please !!!
eostic
Premium Member
Premium Member
Posts: 3838
Joined: Mon Oct 17, 2005 9:34 am

Post by eostic »

Off the top of my head, I can only guess that "maybe" it has something to do with the method that you are pulling the data out of DB2, and/or the Connector and the datatype that the xml is in (potentially suspecting bad characters being fed in along with your xml string).

This is all just a guess...but one thing that might be worthwhile is to create another Job that uses a RowGen or other method to "drive" one row thru the Job. Put a Transformer in front of the xml stage, and just "perfectly paste" one entire xml document into the Derivation (just put a single quote directly in front of the very first tag in the header and a single quote after the very last root closing tag).

Run the Job using xml "content" as you did from db2. If it fails, then it may be the xmlInput Stage or something in "that" xml string.... but if it works, then the issue may be something with the data in the db2 table or the way that 11.3 is retrieving it.

This won't resolve the problem either way, but it may offer more insight into where the problem really lies.

Ernie
Ernie Ostic

blogit!
<a href="https://dsrealtime.wordpress.com/2015/0 ... ere/">Open IGC is Here!</a>
synsog
Premium Member
Premium Member
Posts: 232
Joined: Sun Aug 01, 2010 11:01 pm
Location: Pune

Post by synsog »

Thanks Ernie.

Issue Resolved.

Xalan parsing errors reported by input XML stage is caused by incorrect formatting or content in source XML. These are usually fatal errors which will cause the job processing that XML file to terminate.

However, in Information Server prior releases, certain fatal xalan parsing errors were incorrectly assigned to message class of Warning rather than Fatal. As a result, these errors did not cause the job to abort. This was wrong behavior in older version and I found that the message was fixed in later versions so that the xalan parsing error is correctly displayed as Fatal message instead of Warning message.


Follow below steps to resolve the issue and let me know how it goes.

1/ Open the XML Input Stage.
2/ Click on 'Stage' Tab.
3/ At the bottom of panel find the section called "Transformational error mappings". The first message type listed is Fatal. Change the selection list next to Fatal to set it to Warning.
4/ Click OK then save & recompile job. Fatal xalan parsing errors will now log as as Warning message instead of error.


We need to understand that newer versions will parse more efficiently and make user to check out source XML's that they are in proper syntax.


Thanks,
Sri
Post Reply