A colleague here at SysTalk experienced what is documented as a BizTalk Server 2004 bug on a BizTalk Server 2006 R2 / SQL 05 install. Essentially BRE evaluates a number of rules on an xml node then marks up that xml node with an appropriate value. So if value a then set node"A" to value aa, if value b then set node A to vallue bb, if value c then set node A to cc. That kind of simple logic. Under high load situations BRE trips up and evaluates the first condition to true, then will incorrectly evaluate another condition to true.
This was a known issues in BizTalk Server 2004 which had a defect in the way in which BRE cached xml. Seems it lives on in BizTalk Server 2006 R2. We can reproduce and have confirmed the behaviour by tracking BRE. Haven’t checked the status of the defect in BizTalk Server 2009 yet. Anyhow BizTalkers, keep and eye out and be aware.
The rule engine may return incorrect values in BizTalk Server 2004