Geeks With Blogs
Stuart Brierley Integration Management - BizTalk and More

The following error was encountered when consuming a flat file through a pipeline that made use of the Flat File Disassembler pipeline component:

There was a failure executing the receive pipeline: "xxxxxxxxx, xxxxxxxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxx" Source: "Flat file disassembler" Receive Port: "xxxxxxxxx" URI: "C:\BizTalk Folders\xxxxxxxxx\*.csv" Reason: Cannot access a disposed object. Object name: 'DataReader'.

This was resolved by settling 'RecoverableInterchangeProcessing' to True in the Receive Pipeline Properties on the Receive Location.

 

Posted on Friday, September 9, 2011 12:14 PM BizTalk Administration and Troubleshooting , BizTalk Pipelines | Back to top


Comments on this post: BizTalk Pipeline - Flat File Disassembler Cannot Access a Disposed Object 'DataReader'

# re: BizTalk Pipeline - Flat File Disassembler Cannot Access a Disposed Object 'DataReader'
Requesting Gravatar...
Is this the only resolution? I do not want Recoverable Interchange Processing facility. How do I resolve this error then?
Left by Tabarak on Nov 11, 2011 1:46 PM

# re: BizTalk Pipeline - Flat File Disassembler Cannot Access a Disposed Object 'DataReader'
Requesting Gravatar...
Awesome. It worked for me! Thanks for Help.
Left by Deepanshu on Mar 06, 2013 8:56 AM

# Failed to flatten the design.
Requesting Gravatar...
hi, i have a problem in encounter . in first step ( in import design) encounter show: "Failed to flatten the design." and exit in encounter
please guide me
Left by Nora on Jul 17, 2013 6:27 PM

# re: BizTalk Pipeline - Flat File Disassembler Cannot Access a Disposed Object 'DataReader'
Requesting Gravatar...
I did this but still I got the same error.
Left by Sujay on Sep 17, 2014 2:00 PM

# re: BizTalk Pipeline - Flat File Disassembler Cannot Access a Disposed Object 'DataReader'
Requesting Gravatar...
This does work. The problem with the FF disassembler is quite subtle, and only occurs when recoverable interchange processing is switched off. The problem is triggered in the CreateNonrecoverableOutputMessage method of FFDasmComp by the following line of code:
XmlReader reader1 = this.m_docspec.Parse(this.m_inputData);

The docspec reader may be invalid following a garbage collection. This problem will generally occur when some downstream component has processed a disassembled message. In essence, the FF Disassembler is not always safe to use with other components.

Switching on recoverable interchange processing is not always feasible, depending on requirements. Other options for handling this problem will involve custom code. For example, you could create a FF Disassembler wrapper component that completely disassembles the flat file into an in-memory collection and then returns each message in the collection from the GetNext() method.
Left by Charles Young on Jul 05, 2015 7:13 PM

Your comment:
 (will show your gravatar)


Copyright © Stuart Brierley | Powered by: GeeksWithBlogs.net