Release a loaded program, table, or mapset.

RELEASE
>>-RELEASE--PROGRAM(name)--------------------------------------><
Conditions: INVREQ, NOTAUTH, PGMIDERR
This command is threadsafe.
Note for dynamic transaction routing: Using RELEASE of a program
LOADed with HOLD could create inter-transaction affinities that adversely
affect the use of dynamic transaction routing. See the CICS® Application Programming Guide for
more information about transaction affinities.
Description
RELEASE releases the program, table,
or mapset previously loaded by a LOAD command. This means that the issuing
task can no longer use the resource unless another LOAD is issued.
Note: RELEASE
does not remove a program from storage. It reduces the RESCOUNT by 1 and when
the count reaches zero, the storage occupied by the program can be released
by CICS storage
manager.
If
the HOLD option is specified in the LOAD command, the loaded resource is not
released at the end of the task. It can only be released by a RELEASE command.
This RELEASE command may be issued by the task that loaded the resource or
by any other task.
If the HOLD option is not specified in the LOAD
command, the loaded resource is released at the end of the task. It may, however,
be released before this by the task that loaded the resource issuing a RELEASE
command.
Options
- PROGRAM(name)
- specifies
the identifier (1–8 characters) of a program, table, or mapset to be released.
Conditions
- INVREQ
- RESP2
values:
- 5
- An invalid attempt is made by the program to release itself. A RELEASE
command for the program that contains this command is allowed only when a
corresponding LOAD command for the program has been issued from the same task,
or when a LOAD command with the HOLD option has been issued from another task.
- 6
- The command is issued for a program that is not loaded.
- 7
- Either the command is issued for a program that was loaded, without the
HOLD option, by another task; or the program has been enabled as a global
user exit .
- 17
- The program is defined with RELOAD=YES. It must be released by a FREEMAIN
rather than a RELEASE command.
- 30
- The program manager domain has not yet been initialized. This is probably
due to a release request having been made in a first stage PLT.
Default action: terminate the task abnormally.
- NOTAUTH
- occurs
when a resource security check has failed on PROGRAM(name).
Default action:
terminate the task abnormally.
- PGMIDERR
- RESP2
values:
- 1
- A program, table, or mapset has no entry in the PPT.
- 2
- A program, table, or mapset is disabled.
- 9
- The installed program definition is for a remote program.
- 42
- An attempt has been made to RELEASE a JVM program. This is invalid because Java™ byte
codes programs are not managed by CICS Loader.
Default action: terminate the task abnormally.
Examples
The following example shows how to release
an application program, called PROG4, loaded in response to a LOAD command:
EXEC CICS RELEASE PROGRAM('PROG4')