RpcNsMgmtSetExpAge  ORAFUQ

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

RpcNsMgmtHandleSetExpAge