Fault Rule and Route Rule processing

1 0 1,234

Here are some important considerations when working with FaultRules and RouteRules.

1) In Flows -> Flow, when there's a RaiseFault policy, the system exits Flow and control passes to the FaultRules -> FaultRule. It’s worth noting the following : in FaultRules -> FaultRule, executing a RaiseFault policy does not exit step processing for that FaultRule. So, the API Proxy developer must show extra care because any following policy conditions that match the run-time environment will cause the system to execute the corresponding step; this often results in RaiseFault output that can override prior RaiseFault output.Such care is often unnecessary in a Flow – once the run-time encounters a FaultRule, the system exits the Flow and carries control to FaultRules. In that Flow, the system no longer considers subsequent steps in Flow policies after a RaiseFault.

2) FaultRule conditions (not at policy level, but FaultRule segment level) work such that if there are multiple matches, the last matching FaultRule segment executes. The prior matching fault rules do NOT even execute ! If 2 Flows have conditions that match the run-time environment, the first matching Flow is executed. But, if 2 FaultRule have conditions that match the run-time environment, it's still the last matching FaultRule that gets executed.

3) For multiple RouteRules where condition matches, the first RouteRule executes. This is different from FaultRules and Flows.

Version history
Last update:
‎03-06-2015 02:30 PM
Updated by: