Normally, the DDM conversations associated with a source server job are kept active until one of the conditions described in this topic is met.
If 1, 2, and 3 are true and the source job or activation group has not ended, the conversation is considered to be unused, that is, the conversation is kept active but no requests are being processed.
DDM conversations can be active and unused because the default value of the DDMCNV job attribute is *KEEP. This is desirable for the usual situation of a source server program accessing a remote file for multiple I/O operations; these operations are handled one at a time, as shown in Figure 2 and explained in the text following it.
If multiple DDM requests are to be made in a job and the DDM files are being continually opened and closed in the job, *KEEP should be used to keep an unused DDM conversation active. (However, as long as one DDM file remains open or locked, *KEEP has no effect.)
For source jobs that access remote files but do not access data records in them, it might be desirable, depending on the frequency of the file accesses, to automatically drop each DDM conversation at the completion of each file-related source job request. Whether the conversation in the source job is kept active or automatically dropped during the time a conversation is unused is determined by the DDMCNV job attribute value (*KEEP or *DROP).
Regardless of the value of the DDMCNV job attribute, conversations are dropped when one of the following things occurs:
Unused conversations within an active job can also be dropped by the Reclaim DDM Conversations (RCLDDMCNV) or Reclaim Resources (RCLRSC) command. Errors, such as communications line failures, can also cause conversations to drop.