|
Home > Archive > BizTalk Server Orchestration > April 2006 > Sequential Convoy Race Condition
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
Sequential Convoy Race Condition
|
|
| ashok.sandya@gmail.com 2006-04-27, 7:25 am |
| Hello,
Here is my scenario - I have an orchestration where I send an email to
a list of approvers. I initiate a correlation when I do this. I then
wait in a loop with a Receive Shape (following the correlation I
created), until I receive the approval/rejection from all the users
(essentially a Sequential Convoy). The approvals/rejections can come in
any order, I just need to make sure that I wait until all of the users
have responded. This works fine until when I am processing the approval
of one user another user sends an approval. In this case, the
orchestration has already correlated an incoming message and processing
it but another user with the same correlation data has sent a message
to BizTalk, in this case I seem to be losing the message sent by the
second user. Is there a way to handle such a condition in BizTalk?
Thanks for the help,
Ashok
| |
| ashok.sandya@gmail.com 2006-04-27, 7:25 am |
| I forgot to mention the fact that I cannot use a parallel convoy here
because the number of users/approvers is not known to me until runtime.
Thanks
Ashok
| |
| Eric Stott 2006-04-27, 7:25 am |
| Without knowing more about your situation, here is my take on how to
approach it:
I would loop through the messages and then use a start orchestration shape
and from within those orchestrations, send out the emails with the
correllation set.
Eric
http://stottcreations.com/blog
<ashok.sandya@gmail.com> wrote in message
news:1145394011.271521.105450@v46g2000cwv.googlegroups.com...
> Hello,
>
> Here is my scenario - I have an orchestration where I send an email to
> a list of approvers. I initiate a correlation when I do this. I then
> wait in a loop with a Receive Shape (following the correlation I
> created), until I receive the approval/rejection from all the users
> (essentially a Sequential Convoy). The approvals/rejections can come in
> any order, I just need to make sure that I wait until all of the users
> have responded. This works fine until when I am processing the approval
> of one user another user sends an approval. In this case, the
> orchestration has already correlated an incoming message and processing
> it but another user with the same correlation data has sent a message
> to BizTalk, in this case I seem to be losing the message sent by the
> second user. Is there a way to handle such a condition in BizTalk?
>
> Thanks for the help,
> Ashok
>
|
|
|
|
|