RpcNsMgmtSetExpAge
The RpcNsMgmtSetExpAge
function modifies the application s global expiration age for local copies of
name-service data.
#include <rpc.h>
RPC_STATUS RPC_ENTRY RpcNsMgmtSetExpAge(
unsigned long ExpirationAge |
|
); |
|
Parameters
ExpirationAge
Specifies an
integer value in seconds that indicates the default expiration age for local name-service
data. This expiration age is applied to all name-service read operations
(that is, all next operations).
An expiration
age of 0 causes an immediate update of the local name-service data.
To reset the
expiration age to an RPC-assigned random value of two hours, specify a value of
RPC_C_NS_DEFAULT_EXP_AGE.
Remarks
The RpcNsMgmtSetExpAge
routine modifies the global expiration age of an application. The expiration
age is the amount of time that a local copy of data from a name-service
attribute can exist before a request from the application for the attribute
requires updating the local copy. When an application begins running, the RPC
run-time library specifies a random value of between 8 and 12 hours as the
default expiration age. The default is global to the application.
Normally, you
should avoid using RpcNsMgmtSetExpAge; instead, you should rely on the
default expiration age.
An expiration
age is used by name-service next operations (which read data from
name-service attributes). A next operation normally starts by looking for a
local copy of the attribute data being requested by an application. In the
absence of a local copy, the next operation creates one with fresh attribute
data from the name-service database. If a local copy already exists, the
operation compares its actual age to the expiration age being used by the
application. If the actual age exceeds the expiration age, the operation
automatically tries to update the local copy with fresh attribute data. If
updating is impossible, the old local data remains in place and the next
operation fails, returning the RPC_S_NAME_SERVICE_UNAVAILABLE status code.
Setting the
expiration age to a small value causes the name-service next operations to
frequently update local data for any name-service attribute requested by your
application. For example, setting the expiration age to 0 forces all next
operations to update local data for the name-service attribute requested by
your application. Therefore, setting small expiration ages can create
performance problems for your application and increase network traffic.
Furthermore, if your application is using a remote name-service server, a small
expiration age can adversely affect network performance for all applications.
Return Values
Value |
Meaning |
RPC_S_OK |
Success |
RPC_S_NAME_SERVICE_UNAVAILABLE |
Name
service unavailable |
See Also