If you experience sequence of errors below with BizTalk HL7 MLLP receive ports you may need to request a hotfix from Microsoft. Knowledge base article number is 2454887 but it’s still not available on the KB site. The hotfix is recently released and you may need to open support ticket to get to it. It requires three other hotfixes installed:
%u00b7 970492 (DASM 3.7.502.2)
%u00b7 973909 (additional ACK codes)
%u00b7 981442 (Microsoft.solutions.btahl7.mllp.dll3.7.509.2)
If the exceptions below repeatedly appear in the event log you most likely would be helped by the hotfix:
Fatal error encountered in 2XDasm. Exception information is Cannot access a disposed object. Object name: ‘CEventingReadStream’.
There was a failure executing the receive pipeline: “BTAHL72XPipelines.BTAHL72XReceivePipeline, BTAHL72XPipelines, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35” Source: “BTAHL7 2.X Disassembler” Receive Port: “ReceivePortName” URI: “IPAddress:portNumber” Reason: Cannot access a disposed object. Object name: ‘CEventingReadStream’.
The Messaging Engine received an error from transport adapter “MLLP” when notifying the adapter with the BatchComplete event. Reason “Object reference not set to an instance of an object.”
We’ve been through a lot of troubleshooting with Microsoft Product Support and they did a great job finding an issue and releasing a fix.