non-idempotent

Non-idempotent (at most once) indicates that the remote procedure call cannot be executed more than once because it will return a different value or change a state. Non-idempotent is the default for remote procedure calls.

All non-idempotent calls are executed by the server "at most once"; that is, not at all or exactly once. The protocol used to enforce this is the callback function. Non-idempotent requests require the server to perform a callback when it receives a request from a client about which it has no information. The server makes the callback request by issuing a remote procedure call to the client. When it receives the callback, the server's boot time and the client's sequence number are used as the basis of comparison to validate the request. If a match is made, the server executes the original request. Otherwise, the request is ignored.

A non-idempotent call ensures that the data is received and processed at most one time.

See Also

broadcast, callback, idempotent, IDL, maybe