The DMXCACHE_MULTIPLEJOBS statement determines whether PowerExchange runs data maps caching in multiple-jobs or single-job mode.
z/OS
DM_SUBTASK, DMXCACHE_DELETEECSA, and DMXCACHE_MAX_MEMORY_MB
No
DMXCACHE_MULTIPLEJOBS={
N
|Y}
N
. PowerExchange runs data maps caching in single-job mode.
Y
. PowerExchange runs data maps caching in multiple-jobs mode.
Default is N.
PowerExchange maintains copies of previously read data maps in
job-level
memory. On subsequent reads of data maps, PowerExchange retrieves the data maps from
job-level
memory, which eliminates the overhead of enqueues, opens, points, reads, and closes of the data maps KSDS file.
PowerExchange does not use ESCA memory to maintain information about data maps.
When a data map changes or is deleted, PowerExchange deletes the copy of that data map in the cache. For changed data maps, PowerExchange does not add the data map to the cache again until the data map is actually used.
Single-job mode is more efficient than multiple-jobs mode because in single-job mode, the PowerExchange Listener job is the only job that updates the data maps file and the data maps cache does not become stale. Consequently, PowerExchange never needs to completely clear the cache like it does in multiple-jobs mode.
In multiple-jobs mode, PowerExchange maintains copies of previously read data maps in
job-level
memory. Additionally, when you start a PowerExchange Listener, PowerExchange dynamically allocates 4096 bytes of ECSA memory in which PowerExchange maintains the name of the data maps KSDS file and the time stamp of its last update. PowerExchange uses this information to determine whether the data maps cache is stale and needs to be cleared.
On subsequent reads of data maps, PowerExchange retrieves the data maps from
job-level
memory, which eliminates the overhead of enqueues, opens, points, reads, and closes of the data maps KSDS file.
When a data map changes or is deleted, PowerExchange completes the following processing:
In ECSA memory, PowerExchange changes the time stamp of the last update to the data maps KSDS file.
When another task tries to access any data map, PowerExchange determines if the cache is stale by comparing the time stamp in ECSA memory against the time stamp of the data maps cache. If the cache is stale, PowerExchange clears it, and then PowerExchange reads the required data map from disk and adds it to the cache.
When you close a PowerExchange Listener, PowerExchange frees the ECSA memory if the following conditions are true:
The DMXCACHE_DELETEECSA statement is set to Y in the DBMOVER configuration file.
No files exist with nonzero use counts in the ECSA memory.
When you run data maps caching in multiple-jobs mode, you can optionally use the PWXUDMX utility to manage the ECSA memory. For more information about the utility, see the