I have a large number of messages that are passed into an orchestration/ split in the incoming pipeline and then passed one by one into a Rules Engine policy. I have discovered when I am processing hundreds of instances at once I ocassionally get the following exception raised in HAT.
"Microsoft.RuleEngine.RuleSetTranslationComplexityException
Ruleset is too complex and translation cannot complete within the configured translation timeout interval."
This is because BizTalk 2004 does not throttle the calls to the rules engine and the rules engine queues the inbound message and processes them in FIFO order.
The solution:
"Increase the time out in the registry for the rules engine from 1 minute -> something like 5 minutes"
regedit
My Computer/HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Business Rules/3.0/
TranslationTimeout - default value "60000" (1 minute)
restart Rules Engine Service
VOLA