saf-cache.c File Reference


Detailed Description

ES ESF Manager Results Cache Facility.

The ESF Manager caches results from ESMs to reduce the number of actual queries to the ESMs, which are typically very slow (orders of magnitude slower than returning cached results, in some cases). This file implements the cache.

There are actually two specific caches implemented here: one for the results of VERIFY calls, and the other for the results of AUTH calls. For performance reasons, a substantial part of the caching code is specific to these caches, rather than providing a general-purpose caching mechanism.

When running in the CAS environment, the cache exists in one or more blocks of named shared memory and is accessed by one or more single- threaded processes. Serialization is done using the CAS enq/deq locking mechanism, via cover routines in the ESF Environments module (saf-env.c).

When running in the MFDS environment, the cache is held in process private memory, but is accessed by multiple threads. Serialization is done with OS or COBOL RTS mutexes, again via cover routines in the Environment module.

Definition in file saf-cache.c.

Go to the source code of this file.

Functions

mf_uns32 SafCacheInit (void)
 ESF Cache Initialization.


Function Documentation

mf_uns32 SafCacheInit ( void   ) 

ESF Cache Initialization.

This function is invoked by the ESF Manager Initialization routine to initialize the cache facility.

Returns:
An integer value, zero for success and non-zero if initialization failed. See ESF Manager Initialization Return Codes.

Definition at line 119 of file saf-cache.c.

References SafINIT_OK.