DEFINE STREAM command: Difference between revisions
(→Syntax) |
m (→Usage notes: typo) |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<p class="pageSubtitle">Describing sequential I/O streams</p> | |||
==Summary== | ==Summary== | ||
<dl> | <dl> | ||
Line 8: | Line 10: | ||
==Syntax== | ==Syntax== | ||
<p class="syntax">DEFINE STREAM <span class="term">name</span> [LIKE <span class="term">previousname</span>] WITH | <p class="syntax">DEFINE STREAM <span class="term">name</span> [LIKE <span class="term">previousname</span>] WITH SCOPE=SYSTEM | ||
<span class="squareb">{</span> CONCATENATE=(<span class="term">stream1</span> [,<span class="term">streamn</span>]...) | |||
{CONCATENATE=(<span class="term">stream1</span> [,<span class="term">streamn</span>]...) | | PARALLEL=(<span class="term">stream1</span> [,<span class="term">streamn</span>]) MINAVAIL=<span class="term">n</span> | ||
| | | GDG=<span class="term">ddname</span> CONTROL=<span class="term">ddname2</span> | ||
| GDG=<span class="term">ddname</span> CONTROL=<span class="term">ddname2</span> | | RING=(<span class="term">stream1</span> [,<span class="term">streamn</span>]...) OFFLOAD=<span class="term">stream</span> CONTROL=<span class="term">ddname</span> [AUTOOFFLOAD=<span class="term">n</span>] [CLOSE={AUTO | NOAUTO}] <span class="squareb">}</span> | ||
| | |||
</p> | </p> | ||
<p> | |||
< | The command options are described in the following table. See also [[Configuring checkpoint and journal data streams]]. </p> | ||
<table> | <table> | ||
<tr><th>name</th> | |||
<td>Identifies the stream. It may be a keyword or, for a sub- or member stream, a non-keyword. See the example in [[#Example|Example]], below. | |||
<p> | |||
Valid keywords, which refer to Model 204 recognized data set DDnames, are: <var>CCAJLOG</var>, <var>CCAJRNL</var>, <var>CHKPOINT</var>, <var>CHKPNTS</var>, <var>RESTART</var>, <var>RESTARTS</var>, <var>CCARF</var>, <var>CCAGEN</var>. </p></td></tr> | |||
<tr><th><var>CONCATENATE</var></th> | <tr><th><var>CONCATENATE</var></th> | ||
<td>Specifies a stream defined with a concatenated configuration. </td></tr> | <td>Specifies a stream defined with a concatenated configuration. | ||
<p><var>CONCATENATE</var>, <var>PARALLEL</var>, <var>GDG</var>, and <var>RING</var> are mutually exclusive options.</p></td></tr> | |||
<tr><th>stream1 ... streamn</th> | <tr><th nowrap>stream1 ... streamn</th> | ||
<td>Options stream1 through streamn specify the names of the streams that are members of the concatenated configuration in the order of their use. The streams referred to can be: | <td>Options <var class="term">stream1</var> through <var class="term">streamn</var> specify the names of the streams that are members of the concatenated configuration in the order of their use. The streams referred to can be: | ||
<ul> | <ul> | ||
<li> | <li> | ||
Line 39: | Line 43: | ||
<tr><th><var>PARALLEL</var></th> | <tr><th><var>PARALLEL</var></th> | ||
<td>Specifies a stream defined with a parallel configuration. A PARALLEL stream requires a MINAVAIL value.</td></tr> | <td>Specifies a stream defined with a parallel configuration. A <var>PARALLEL</var> stream requires a <var>MINAVAIL</var> value. | ||
<p><var>CONCATENATE</var>, <var>PARALLEL</var>, <var>GDG</var>, and <var>RING</var> are mutually exclusive options.</p></td></tr> | |||
<tr><th><var>MINAVAIL</var></th> | <tr><th><var>MINAVAIL</var></th> | ||
<td>Specifies the number of members that must remain available for a parallel stream to continue as a valid output stream. | <td>Specifies the number of members that must remain available for a parallel stream to continue as a valid output stream. | ||
<p> | <p> | ||
MINAVAIL is valid for PARALLEL streams only. The default is the number of members specified in the PARALLEL parameter. The smallest allowable value for this option is 1.</p> | <var>MINAVAIL</var> is valid for <var>PARALLEL</var> streams only. The default is the number of members specified in the <var>PARALLEL</var> parameter. The smallest allowable value for this option is 1.</p> | ||
<p> | <p> | ||
If there is an I/O error on all streams, an I/O error is displayed. If one member stream is still usable, then a value less than MINAVAIL results in the display of a file-full condition with output streams. Under the same conditions, falling below MINAVAIL results in the display of an end-of-data condition with input streams. | If there is an I/O error on all streams, an I/O error is displayed. If one member stream is still usable, then a value less than <var>MINAVAIL</var> results in the display of a file-full condition with output streams. Under the same conditions, falling below <var>MINAVAIL</var> results in the display of an end-of-data condition with input streams. </p></td></tr> | ||
<tr><th><var>RING</var></th> | <tr><th><var>RING</var></th> | ||
<td>Specifies that the stream being defined is a ring configuration. The options stream1 through streamn specify the names of the streams that are members of the ring configuration in the order of their use. The streams referred to can be: | <td>Specifies that the stream being defined is a ring configuration. The options <var class="term">stream1</var> through <var class="term">streamn</var> specify the names of the streams that are members of the ring configuration in the order of their use. The streams referred to can be: | ||
<ul> | <ul> | ||
<li> | <li> | ||
Line 58: | Line 63: | ||
<p>Data set </p> | <p>Data set </p> | ||
</li> | </li> | ||
</ul></td></tr> | </ul> | ||
<p><var>CONCATENATE</var>, <var>PARALLEL</var>, <var>GDG</var>, and <var>RING</var> are mutually exclusive options.</p></td></tr> | |||
<tr><th><var>AUTOOFFLOAD</var></th> | <tr><th><var>AUTOOFFLOAD</var></th> | ||
<td>Specifies the number of members that can be filled before an offload process is started for an output RING stream. The value specified must range from one to the number of ring members minus one. If a value greater than the range maximum is specified, the DEFINE STREAM command is rejected. | <td>Specifies the number of members that can be filled before an offload process is started for an output <var>RING</var> stream. The value specified must range from one to the number of ring members minus one. If a value greater than the range maximum is specified, the <var>DEFINE STREAM</var> command is rejected. | ||
<p> | <p> | ||
This option is invalid with PARALLEL and CONCATENATED streams and has no effect when specified for input RING streams. The default value is the number of ring members minus one. The system manager can start the offload process manually at any time by using the OFFLOAD command. </p></td></tr> | This option is invalid with <var>PARALLEL</var> and <var>CONCATENATED</var> streams and has no effect when specified for input <var>RING</var> streams. The default value is the number of ring members minus one. The system manager can start the offload process manually at any time by using the <var>OFFLOAD</var> command. </p></td></tr> | ||
<tr><th><var>OFFLOAD</var></th> | <tr><th><var>OFFLOAD</var></th> | ||
<td>Specifies the name of the stream used for automatic or manual dumping of RING stream members. For an output RING, the OFFLOAD stream is opened at one of the following points: | <td>Specifies the name of the stream used for automatic or manual dumping of <var>RING</var> stream members. For an output <var>RING</var>, the <var>OFFLOAD</var> stream is opened at one of the following points: | ||
<ul> | <ul> | ||
<li> | <li> | ||
<p>When the AUTOOFFLOAD threshold is reached.</p> | <p>When the <var>AUTOOFFLOAD</var> threshold is reached.</p> | ||
</li> | </li> | ||
<li> | <li> | ||
<p>When an OFFLOAD command is issued for the RING stream.</p> | <p>When an <var>OFFLOAD</var> command is issued for the <var>RING</var> stream.</p> | ||
</li> | </li> | ||
<li> | <li> | ||
<p>When the RING stream is closed and one or more members of the RING require offloading, unless specifically suppressed by the CLOSE=NOAUTO parameter. </p> | <p>When the <var>RING</var> stream is closed and one or more members of the <var>RING</var> require offloading, unless specifically suppressed by the <code>CLOSE=NOAUTO</code> parameter setting. </p> | ||
</li> | </li> | ||
</ul> | </ul> | ||
Line 83: | Line 89: | ||
The offload stream is closed if it was concatenated. Otherwise, it is left open as long as the ring stream is left open.</p> | The offload stream is closed if it was concatenated. Otherwise, it is left open as long as the ring stream is left open.</p> | ||
<p> | <p> | ||
In the case of input, OFFLOAD specifies the stream containing data that was offloaded while writing to the ring stream.</p> | In the case of input, <var>OFFLOAD</var> specifies the stream containing data that was offloaded while writing to the ring stream.</p> | ||
<p> | <p> | ||
OFFLOAD is required for ring streams and is not valid with | <var>OFFLOAD</var> is required for ring streams, and it is not valid with <var>CONCATENATE</var> or <var>PARALLEL</var>. </p> | ||
</td></tr> | </td></tr> | ||
<tr><th><var>CLOSE</var></th> | <tr><th><var>CLOSE</var></th> | ||
<td>Specifies the offloading action taken when the RING stream | <td>Specifies the offloading action taken when the <var>RING</var> stream closes. | ||
<table> | <table> | ||
Line 96: | Line 102: | ||
<tr><th><var>NOAUTO</var></th> | <tr><th><var>NOAUTO</var></th> | ||
<td>Specifies that the ring is not offloaded completely when the stream is closed. In this case, the offload stream does not contain a complete copy of the data on the ring. At the time the ring is closed, any offload process in progress is immediately ended without completing the offload of the member currently being offloaded. EOD processing of a ring with CLOSE=NOAUTO does not attempt to keep the offload stream open, if it is then open. The offload continues until the ring stream is closed. | <td>Specifies that the ring is not offloaded completely when the stream is closed. In this case, the offload stream does not contain a complete copy of the data on the ring. At the time the ring is closed, any offload process in progress is immediately ended without completing the offload of the member currently being offloaded. EOD processing of a ring with <code>CLOSE=NOAUTO</code> does not attempt to keep the offload stream open, if it is then open. The offload continues until the ring stream is closed. | ||
<p> | <p> | ||
The table below sums up the effect of the AUTO or NOAUTO options on EOD and close processing | The table below sums up the effect of the <var>AUTO</var> or <var>NOAUTO</var> options on EOD and close processing: </p> | ||
<table> | <table> | ||
<caption>Effects of AUTO and NOAUTO options</caption> | <caption>Effects of AUTO and NOAUTO options</caption> | ||
<tr> <th> | <tr class="head"> <th><p>Option</p></th> | ||
<p>Option</p> | <th><p>EOD processing</p></th> | ||
</th> | <th><p>CLOSE processing</p></th> </tr> | ||
<th> | |||
<p>EOD processing</p> | |||
</th> | |||
<th> | |||
<p>CLOSE processing</p> | |||
</th> </tr> | |||
<tr> <th><var> | <tr> <th><var><p>AUTO</p></var></th> | ||
<p>AUTO</p></var></th> | <td><p>If offload process enters idle state, <var>OFFLOAD</var> stream remains open.</p></td> | ||
<td><p>If offload process enters idle state, OFFLOAD stream remains open.</p> | <td><p>Any members not offloaded before are offloaded.</p></td> </tr> | ||
</td> | |||
<td> | |||
<p>Any members not offloaded before are offloaded.</p> | |||
</td> </tr> | |||
<tr> <th><var> | <tr> <th><var><p>NOAUTO</p></var></th> | ||
<p>NOAUTO</p> | |||
</var></th | |||
<td> | <td> | ||
<p>If offload process enters idle state, <var>OFFLOAD</var> stream is closed.</p> | |||
<p>If an offload process is in progress, it is terminated immediately. There is no further attempt to offload.</p></td> </tr> | <p>If an offload process is in progress, it is terminated immediately. There is no further attempt to offload.</p></td> </tr> | ||
</table> | </table> | ||
</td></tr> | </td></tr> | ||
</table> | |||
<tr><th><var>CONTROL</var></th> | <tr><th><var>CONTROL</var></th> | ||
<td>Specifies the name of a data set that contains control information for the RING stream or GDG data set. The CONTROL data set is required only for CCAJRNL RING streams and GDG data sets. SPACE=CYL,(1,1) is sufficient. You do not need to specify any DCB attributes, <var class="product">Model 204</var> sets those to: | <td>Specifies the name of a data set that contains control information for the <var>RING</var> stream or <var>GDG</var> data set. The <var>CONTROL</var> data set is required only for CCAJRNL <var>RING</var> streams and <var>GDG</var> data sets. <code>SPACE=CYL,(1,1)</code> is sufficient. You do not need to specify any DCB attributes, <var class="product">Model 204</var> sets those to: | ||
<p class="code">RECFM=U,LRECL=24,BLKSIZE=24 | <p class="code">RECFM=U,LRECL=24,BLKSIZE=24 | ||
</p> | </p> | ||
<p>The CONTROL data set keeps track of each offload that has occurred and what the current ring member or GDG stream is. It is an output data set during the original run. If recovery is subsequently required, it is an input data set that tells recovery:</p> | <p>The <var>CONTROL</var> data set keeps track of each offload that has occurred and what the current ring member or GDG stream is. It is an output data set during the original run. If recovery is subsequently required, it is an input data set that tells recovery:</p> | ||
<ul> | <ul> | ||
<li> | <li> | ||
Line 148: | Line 141: | ||
<tr><th><var>GDG</var></th> | <tr><th><var>GDG</var></th> | ||
<td>Specifies a data set defined with a GDG configuration. A GDG data set requires a CONTROL data set. A GDG member must be a data set. STREAM is not supported for a GDG member. GDG must be the lowest level of a stream and may have no subsequent levels. | <td>Specifies a data set defined with a GDG configuration. A <var>GDG</var> data set requires a <var>CONTROL</var> data set. A <var>GDG</var> member must be a data set. <var>STREAM</var> is not supported for a <var>GDG</var> member. A <var>GDG</var> must be the lowest level of a stream and may have no subsequent levels. | ||
<p> | <p> | ||
The GDG data set is available for only z/OS. GDG streams may only be used for journals and checkpoints. Use of GDG streams for directed output files does not work.</p> | The <var>GDG</var> data set is available for only z/OS. GDG streams may only be used for journals and checkpoints. Use of GDG streams for directed output files does not work.</p> | ||
</ | <p><var>CONCATENATE</var>, <var>PARALLEL</var>, <var>GDG</var>, and <var>RING</var> are mutually exclusive options.</p></td></tr> | ||
</ | |||
</table> | </table> | ||
==Example== | ==Example== | ||
The following example uses a series of DEFINE STREAM commands to specify a recovery stream and the underlying members of that recovery stream: | The following example uses a series of <var>DEFINE STREAM</var> commands to specify a recovery stream and the underlying members of that recovery stream: | ||
<p class="code">DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - | <p class="code">DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - | ||
RING=(A,B,C) OFFLOAD=D CONTROL=E - | RING=(A,B,C) OFFLOAD=D CONTROL=E - | ||
Line 173: | Line 165: | ||
==Usage notes== | ==Usage notes== | ||
<p>The DEFINE STREAM command is only for the recovery streams CCAJLOG, CCAJRNL, CCARF, CHKPNTS, CHKPOINT, RESTART, and RESTARTS. The ring stream OFFLOAD option can also be a stream of any type or a data set. These DEFINE STREAM commands can be entered before the User 0 parameter line in the CCAIN data set. This allows them to be defined by the system manager before they are opened by the initialization routines.</p> | <p> | ||
<p>For more information on sequential file processing, | The <var>DEFINE STREAM</var> command is only for the recovery streams CCAJLOG, CCAJRNL, CCARF, CHKPNTS, CHKPOINT, RESTART, and RESTARTS. The ring stream <var>OFFLOAD</var> option can also be a stream of any type or a data set. These <var>DEFINE STREAM</var> commands can be entered before the User 0 parameter line in the CCAIN data set. This allows them to be defined by the system manager before they are opened by the initialization routines.</p> | ||
<p> | |||
For more information on sequential file processing, see [[OFFLOAD command]].</p> | |||
<p>For general syntax and usage notes that apply to all forms of the <var>DEFINE</var> command, see [[DEFINE command]].</p> | |||
====Handling mutually exclusive or missing options==== | ====Handling mutually exclusive or missing options==== | ||
<p>Each type of stream you can define | <p> | ||
<p>In the following example, CCAJRNL is defined with both the CONCATENATE and PARALLEL options:</p> | Each type of stream you can define — <var>CONCATENATE</var>, <var>PARALLEL</var>, <var>RING</var>, <var>GDG</var> — is mutually exclusive of the other types of streams. If you define a stream with more than one type, <var class="product">Model 204</var> issues various messages, depending on the combination of types you defined.</p> | ||
<p> | |||
In the following example, <code>CCAJRNL</code> is defined with both the <var>CONCATENATE</var> and <var>PARALLEL</var> options:</p> | |||
<p class="code">DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - | <p class="code">DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - | ||
CONCATENATE=(J01,J02) - | CONCATENATE=(J01,J02) - | ||
Line 186: | Line 184: | ||
<b></b>*** 2 ****** M204.0630: DEFINE COMMAND REJECTED | <b></b>*** 2 ****** M204.0630: DEFINE COMMAND REJECTED | ||
</p> | </p> | ||
<p>In the following example, CCAJRNL is defined as GDG, but the CONTROL option is missing.</p> | <p> | ||
<p class="code">DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM | In the following example, <code>CCAJRNL</code> is defined as <var>GDG</var>, but the <var>CONTROL</var> option is missing.</p> | ||
<p class="code">DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM GDG=STEP04B - | |||
<b></b>*** 1 ****** M204.1471: CONTROL IS REQUIRED FOR THIS COMMAND | <b></b>*** 1 ****** M204.1471: CONTROL IS REQUIRED FOR THIS COMMAND | ||
<b></b>*** 2 ****** M204.0630: DEFINE COMMAND REJECTED | <b></b>*** 2 ****** M204.0630: DEFINE COMMAND REJECTED | ||
</p> | </p> | ||
<p>In the following example, CCAJRNL is defined first as a RING stream and then as a GDG data set. <var class="product">Model 204</var> rejects this definition because it reads through to the final option, AUTOOFFLOAD, holds that, and reads backwards to find the type of stream, GDG, the last type defined. Since AUTOOFFLOAD and GDG are mismatched, an error is issued.</p> | <p> | ||
In the following example, <code>CCAJRNL</code> is defined first as a <var>RING</var> stream and then as a <var>GDG</var> data set. <var class="product">Model 204</var> rejects this definition because it reads through to the final option, <var>AUTOOFFLOAD</var>, holds that, and reads backwards to find the type of stream, <var>GDG</var>, the last type defined. Since <var>AUTOOFFLOAD</var> and <var>GDG</var> are mismatched, an error is issued.</p> | |||
<p class="code">DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - | <p class="code">DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - | ||
RING=(J01,J02) - | RING=(J01,J02) - | ||
Line 202: | Line 201: | ||
<b></b>*** 2 ****** M204.0630: DEFINE COMMAND REJECTED | <b></b>*** 2 ****** M204.0630: DEFINE COMMAND REJECTED | ||
</p> | </p> | ||
<p>When you encounter these types of errors, the solution is to rewrite commands.</p> | <p> | ||
When you encounter these types of errors, the solution is to rewrite the commands.</p> | |||
==See also== | |||
<ul> | |||
<li>[[SWITCH STREAM command]] </li> | |||
<li>[[COPY STREAM command]] </li> | |||
<li>[[Configuring checkpoint and journal data streams]] </li> | |||
</ul> | |||
[[Category: System manager commands]] | [[Category: System manager commands]] | ||
[[Category:Commands]] | [[Category:Commands]] |
Latest revision as of 00:36, 29 November 2017
Describing sequential I/O streams
Summary
- Privileges
- User 0 or system manager
- Function
- Describes sequential I/O streams for processing within Model 204
Syntax
DEFINE STREAM name [LIKE previousname] WITH SCOPE=SYSTEM { CONCATENATE=(stream1 [,streamn]...) | PARALLEL=(stream1 [,streamn]) MINAVAIL=n | GDG=ddname CONTROL=ddname2 | RING=(stream1 [,streamn]...) OFFLOAD=stream CONTROL=ddname [AUTOOFFLOAD=n] [CLOSE={AUTO | NOAUTO}] }
The command options are described in the following table. See also Configuring checkpoint and journal data streams.
name | Identifies the stream. It may be a keyword or, for a sub- or member stream, a non-keyword. See the example in Example, below.
Valid keywords, which refer to Model 204 recognized data set DDnames, are: CCAJLOG, CCAJRNL, CHKPOINT, CHKPNTS, RESTART, RESTARTS, CCARF, CCAGEN. | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CONCATENATE | Specifies a stream defined with a concatenated configuration.
CONCATENATE, PARALLEL, GDG, and RING are mutually exclusive options. | ||||||||||||
stream1 ... streamn | Options stream1 through streamn specify the names of the streams that are members of the concatenated configuration in the order of their use. The streams referred to can be:
| ||||||||||||
PARALLEL | Specifies a stream defined with a parallel configuration. A PARALLEL stream requires a MINAVAIL value.
CONCATENATE, PARALLEL, GDG, and RING are mutually exclusive options. | ||||||||||||
MINAVAIL | Specifies the number of members that must remain available for a parallel stream to continue as a valid output stream.
MINAVAIL is valid for PARALLEL streams only. The default is the number of members specified in the PARALLEL parameter. The smallest allowable value for this option is 1. If there is an I/O error on all streams, an I/O error is displayed. If one member stream is still usable, then a value less than MINAVAIL results in the display of a file-full condition with output streams. Under the same conditions, falling below MINAVAIL results in the display of an end-of-data condition with input streams. | ||||||||||||
RING | Specifies that the stream being defined is a ring configuration. The options stream1 through streamn specify the names of the streams that are members of the ring configuration in the order of their use. The streams referred to can be:
CONCATENATE, PARALLEL, GDG, and RING are mutually exclusive options. | ||||||||||||
AUTOOFFLOAD | Specifies the number of members that can be filled before an offload process is started for an output RING stream. The value specified must range from one to the number of ring members minus one. If a value greater than the range maximum is specified, the DEFINE STREAM command is rejected.
This option is invalid with PARALLEL and CONCATENATED streams and has no effect when specified for input RING streams. The default value is the number of ring members minus one. The system manager can start the offload process manually at any time by using the OFFLOAD command. | ||||||||||||
OFFLOAD | Specifies the name of the stream used for automatic or manual dumping of RING stream members. For an output RING, the OFFLOAD stream is opened at one of the following points:
The offload stream is closed if it was concatenated. Otherwise, it is left open as long as the ring stream is left open. In the case of input, OFFLOAD specifies the stream containing data that was offloaded while writing to the ring stream. OFFLOAD is required for ring streams, and it is not valid with CONCATENATE or PARALLEL. | ||||||||||||
CLOSE | Specifies the offloading action taken when the RING stream closes.
| ||||||||||||
CONTROL | Specifies the name of a data set that contains control information for the RING stream or GDG data set. The CONTROL data set is required only for CCAJRNL RING streams and GDG data sets. SPACE=CYL,(1,1) is sufficient. You do not need to specify any DCB attributes, Model 204 sets those to:
RECFM=U,LRECL=24,BLKSIZE=24 The CONTROL data set keeps track of each offload that has occurred and what the current ring member or GDG stream is. It is an output data set during the original run. If recovery is subsequently required, it is an input data set that tells recovery:
| ||||||||||||
GDG | Specifies a data set defined with a GDG configuration. A GDG data set requires a CONTROL data set. A GDG member must be a data set. STREAM is not supported for a GDG member. A GDG must be the lowest level of a stream and may have no subsequent levels.
The GDG data set is available for only z/OS. GDG streams may only be used for journals and checkpoints. Use of GDG streams for directed output files does not work. CONCATENATE, PARALLEL, GDG, and RING are mutually exclusive options. |
Example
The following example uses a series of DEFINE STREAM commands to specify a recovery stream and the underlying members of that recovery stream:
DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - RING=(A,B,C) OFFLOAD=D CONTROL=E - AUTOOFFLOAD=2 DEFINE STREAM A WITH SCOPE=SYSTEM - PARALLEL=(JRNL1,JRNL2) DEFINE STREAM B WITH SCOPE=SYSTEM - PARALLEL=(JRNL3,JRNL4) DEFINE STREAM C WITH SCOPE=SYSTEM - PARALLEL=(JRNL5,JRNL6) DEFINE STREAM D WITH SCOPE=SYSTEM - PARALLEL=(TAPE1,TAPE2) MINAVAIL=1 DEFINE STREAM E WITH SCOPE=SYSTEM - PARALLEL=(CTL1,CTL2) MINAVAIL=1
Usage notes
The DEFINE STREAM command is only for the recovery streams CCAJLOG, CCAJRNL, CCARF, CHKPNTS, CHKPOINT, RESTART, and RESTARTS. The ring stream OFFLOAD option can also be a stream of any type or a data set. These DEFINE STREAM commands can be entered before the User 0 parameter line in the CCAIN data set. This allows them to be defined by the system manager before they are opened by the initialization routines.
For more information on sequential file processing, see OFFLOAD command.
For general syntax and usage notes that apply to all forms of the DEFINE command, see DEFINE command.
Handling mutually exclusive or missing options
Each type of stream you can define — CONCATENATE, PARALLEL, RING, GDG — is mutually exclusive of the other types of streams. If you define a stream with more than one type, Model 204 issues various messages, depending on the combination of types you defined.
In the following example, CCAJRNL
is defined with both the CONCATENATE and PARALLEL options:
DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - CONCATENATE=(J01,J02) - PARALLEL=(JO3,JO4) - MINAVAIL=2 - *** 1 ****** M204.1088: CONCATENATE AND PARALLEL ARE MUTUALLY EXCLUSIVE OPTIONS *** 2 ****** M204.0630: DEFINE COMMAND REJECTED
In the following example, CCAJRNL
is defined as GDG, but the CONTROL option is missing.
DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM GDG=STEP04B - *** 1 ****** M204.1471: CONTROL IS REQUIRED FOR THIS COMMAND *** 2 ****** M204.0630: DEFINE COMMAND REJECTED
In the following example, CCAJRNL
is defined first as a RING stream and then as a GDG data set. Model 204 rejects this definition because it reads through to the final option, AUTOOFFLOAD, holds that, and reads backwards to find the type of stream, GDG, the last type defined. Since AUTOOFFLOAD and GDG are mismatched, an error is issued.
DEFINE STREAM CCAJRNL WITH SCOPE=SYSTEM - RING=(J01,J02) - GDG=STEP06DD - CONTROL=CTL01 - OFFLOAD=OFFJ01 - AUTOOFFLOAD=3 *** 1 ****** M204.1473: RING IS REQUIRED WHEN AUTOOFFLOAD IS SPECIFIED *** 2 ****** M204.0630: DEFINE COMMAND REJECTED
When you encounter these types of errors, the solution is to rewrite the commands.