oracleDBbinding Notification receive port duplicates message when using ESB ItinerarySelect pipelines
Thursday, September 22, 2011 1:16 AM
BizTalk 2009 Server 2009 Enterprise 32-bit w/CU3 installed
WCF LOB Adapter SDK
ESB Toolkit 2.0
I have an oracleDBBinding receive port configured for InboundOperationType=Notification, NotifyOnListenerStart=True, and NotificationStatement=SELECT * FROM SYSADM.PS_DY_GLC_TBL. If I select any ItinerarySelect pipeline (I want to use ItinerarySelectReceiveXml) I get duplicate StartUp messages. The message body is identical. The message context is identical except for the ActivityIdentity, InterChangeID, and ReceiveInstanceID GUID values. There is a delay between the two of about 4 seconds. But there are definitely two distinct Receive events, not one Receive and two Send events as in a pipeline debatching scenario.
If I choose a PassThruReceive or XMLReceive pipeline I get a single message as expected.
Can anyone assist or advise me on diagnosis or workarounds?
- Changed Type Andrew_ZhuModerator Thursday, September 29, 2011 7:34 AM no reply
Thursday, September 22, 2011 3:57 PMModerator
I think this seems like an ESB detail and maybe a duplicate subscription. Usually duplicate messages occur when a duplicate subscription exists. What does your itinerary look like?
If this answers your question, please use the "Answer" button to say so | Ben Cline
- Edited by Ben Cline1MVP, Moderator Thursday, September 22, 2011 3:57 PM
Thursday, September 22, 2011 8:44 PM
My itinerary looks like the ESB MessageEnrichment sample:
-->Orchestration Extender-[My orchestration instead of MessageEnricher] (2 BRE Resolvers)
-->Orchestration Extender-Routing Service (1 Static Resolver, FILE)
My orchestration does contain a parallel action, but I get the duplicate Receive event even before the orchestration executes (I can disable/stop ALL orchestrations and send ports in my application (not ESB) and still get the duplicate).
One seemingly significant fact that I left out previously is that I actually have 2 receive locations configured for notification from 2 different tables in the same oracle database. The port binding configuration is identical except for the PollingId and NotificationStatement. If I delete one or the other I can't reproduce the problem. But, I really need both.
-Tried 3 ports with different PollingId and NotificationStatement to see if I got 3 of each. Still received 2 of each.
-Tried using IP address instead of fqdn in one port's connection string in case it was considered for uniqueness. Same result.
- Edited by Vercellone Thursday, September 22, 2011 10:45 PM
Friday, September 23, 2011 6:29 AMCheck the subscriptions in the Biztalk Admin console for this message.
MCTS: BizTalk Server 2010,BizTalk Server 2006 and WCF
Mark As Answer or Vote As Helpful if this helps.