idempotent

[[ [ IDL-operation-attributes ] ]] operation-attribute , ...

IDL-operation-attributes

Specifies zero or more IDL operation attributes such as idempotent and broadcast. Operation attributes are enclosed in square brackets.

 

Remarks

An idempotent operation is one that does not modify state information and returns the same results each time it is performed. Performing the routine more than once has the same effect as performing it once.

RPC supports two types of remote call semantics: calls to idempotent operations and calls to non-idempotent operations. An idempotent operation can be carried out more than once with no ill effect. Conversely, a non-idempotent operation (at-most-once) cannot be executed more than once because it will either return different results each time or because it modifies some state.

To ensure that a procedure is automatically re-executed if the call does not complete, use the idempotent attribute. If the idempotent, broadcast, or maybe attributes are not present, the procedure will use non-idempotent semantics by default. In this case, the operation is executed only once.

See Also

broadcast, IDL, maybe, non-idempotent