# Fault Activities

Fault activities cause the normal process execution flow to jump to a specialized handler, similar to exceptions in modern programming languages. There are five different types of fault activities, described in this section.

##### Exit

Exit

The Exit activity causes the process to immediately terminate.

##### Throw

Throw

The Throw activity propagates a specified fault to its ancestor Scope, or the process itself.

##### Rethrow

Rethrow

A Rethrow activity can only be used inside a fault handler. It is used to propagate the fault that was caught by the handler, using the original fault data.

##### Compensate

Compensate

The Compensate activity is used to invoke a compensation handler. This activity can only be used within a fault handler, compensation handler or termination handler.

##### CompensateScope

CompensateScope

The CompensateScope activity is used to invoke a compensation handler in the enclosing Scope. This activity can only be used within a fault handler, compensation handler or termination handler.