Morten Lehrmann - BizTalk Blog

Morten Lehrmann - BizTalk Blog

FTP Send port with XML Validator pipeline

BizTalkPosted by Morten Lehrmann 2016-10-10 12:52:06

Had a serious issue on our "old" BizTalk 2010 server. When sending a document to a FTP send port with a pipeline which does XML validation against a schema the below happened.

1. Sending a document which fails the XML validation.

2. The document fails correctly (although the error message is strange):

A message sent to adapter "FTP" on send port "XXX" with URI "XXX'" is suspended.  Error details: An unexpected failure occurred when processing a message. The text associated with the exception is "Attempted to read or write protected memory. This is often an indication that other memory is corrupt.".  

Error details: The data send failed unexpectedly. Inner Exception details: "XXX".

3. Then the host instance running the FTP send port fails:

The BizTalk Service BizTalk Group : XXX service terminated unexpectedly. It has done this 1 time(s). The following corrective action will be taken in 60000 milliseconds: Restart the service.

4. And when this host instance restarts it now transmits the failed document! Also although there is tracking on the Send port it does not show that this document was transmitted.

-----

Moreover, the above happened on the production server only. In the test system it failed correctly.

-----

I tried:

1. Redeploying the application

2.Restarting the BizTalk server.

3.Repairing the BizTalk server installation.

4.Changing the pipeline in various ways.

Nothing helped.

The issue has therefore not been resolved - instead I did a work-around so the schema validation takes place on a FILE adapter (not FTP). That works.

-----

A theory is that the issue stemps from a combination of the pipeline and the FTP file name which is something like:

'XXX.XXX.FTPDATA(+1)'

Still that cannot explain why it works on the test-system.