BizTalk Server General - immutable messages ??

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server General > November 2004 > immutable messages ??





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 immutable messages ??
john

2004-11-25, 5:49 pm

I have read that messages are immutable. I think that's why I can't modify a
message in an orchestration. But why are they immutable ??
When I use a Call Rules shape and transmit a message, does the rule engine
create a new message or does it modify the existing one ?
Same question when I call a C# component which modify the message using an
XmlDocument parameter.


Matt Meleski

2004-11-25, 8:46 pm

1) In an Orchestration, the reason I believe they are immutable , is because
if you were allowed to change even one attribute on a message at any time,
then the Orchestration state would have to be persisted to the messagebox
database (this is a expensive operation). An orchestration will
save its state to the database at certain times, so if the server hosting the
orchestration goes down, when the server comes back on line, the
orchestration will be restored to its last persistance point. But persistance
comes at a cost, because it causes high write activity on the messagebox
database.

To see at what points an orchestration will persist see the below link.

http://msdn.microsoft.com/library/d...g_orch_rrdy.asp

But of course there are ways in an orchestration to get around this:

For example, in an expression shape:

contruct newmessage
{
newmessage = origmessage
// if there are distinguished fields
newmessage.id = 22;

}


Matt.

"john" wrote:

> I have read that messages are immutable. I think that's why I can't modify a
> message in an orchestration. But why are they immutable ??
> When I use a Call Rules shape and transmit a message, does the rule engine
> create a new message or does it modify the existing one ?
> Same question when I call a C# component which modify the message using an
> XmlDocument parameter.
>
>
>

Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com