An external event is processed as a single transaction, both from a BPM Events server (internal state) perspective, as well as from a database (recovery) perspective. In other words, if a serious failure occurs during the processing of this event, then BPM Events recovers the state it was in just before processing this external event, which was also the last recovery state recorded in the database. The partial processing is igonred. Note that even if several internal events were generated and processed as a consequence of the processing of this single external event, the processing of all these internal events are rolled back.
More precisely, the processing of an external event includes the evaluation of all the rules this event can trigger. In turn, this includes the execution of corresponding actions, as well as the evaluation of the rules triggered by internal events generated by these actions (closure of rule chaining). We call the set of all these cascading actions the action closure of the event.