views:

427

answers:

2

I have a MSMQ send port in BizTalk that is configured to send messages using ordered delivery. When the port has sent a batch of messages it leaves an instance of the port as an active running instance.

I still receive the correct files in the correct order but I have to manually terminate the used port instance. If I send new files it looks like the already running instance (that was left from before) is used and I never end up with more than one port instance at a time for the send port.

This will however be a problem from a maintenance point of view and I don't understand why this is happening. Ideas?

I'm using BizTalk 2006 R2.

A: 

Turns out this is part of the implementation of Ordered Delivery. The instance will stay active until terminated.

Riri
+1  A: 

A little more information. the same thing happens is you have long running instances. They go to a dehydrated state if they've not received their following correlation within a certain period of time. The ordered send port createst a singleton pattern on the messagin instance. Thie single instance stays always running and handles messages that match it's subscriptions on a one by onne basis. You can also create an orchestration that imnplements a singleton pattern of you have a single threader or ordered processing requirement (see: http://aspalliance.com/1208_Singleton_Orchestration_in_BizTalk_Server.all).

ChrisLoris