Release notes for Model 204 version 7.5: Difference between revisions
Line 213: | Line 213: | ||
Model 204 supports non-relational, de-normalized data structures. Many Model 204 sites have enjoyed significant cost and performance benefits from efficiently processing multiply occurring fields. This concept has been enhanced to introduce physical field groups that let you view and process groups of fields as a logical entity. | Model 204 supports non-relational, de-normalized data structures. Many Model 204 sites have enjoyed significant cost and performance benefits from efficiently processing multiply occurring fields. This concept has been enhanced to introduce physical field groups that let you view and process groups of fields as a logical entity. | ||
You can define a physical field group only for files with the [[#FILEORG (new settings)|FILEORG X'100' setting]]. To take advantage of field groups in files defined before Model 204 version 7.5, you must reorganize the files with a FILEORG setting that includes the X'100' bit. | You can define a physical field group only for files with the [[#FILEORG (new settings)|FILEORG X'100' setting]]. To take advantage of field groups in files defined before Model 204 version 7.5, you must reorganize the files with a <var>FILEORG</var> setting that includes the X'100' bit. | ||
Files with FILEORG X'100' can have up to 32,000 fields. | Files with <var>FILEORG</var> X'100' can have up to 32,000 fields. | ||
For more information, see [[Field group design (File management)|field group design]]. | For more information, see [[Field group design (File management)|field group design]]. | ||
Line 226: | Line 226: | ||
<p><b>Notes: </b> </p> | <p><b>Notes: </b> </p> | ||
<ul> | <ul> | ||
<li>The limit for BSIZE remains at 16M. | <li>The limit for <var>BSIZE</var> remains at 16M. | ||
<p> | <p> | ||
BSIZE * BRECPPG must be less than or equal to 48M (actually decimal 50,331,648 to be exact). </p> | <code>BSIZE * BRECPPG</code> must be less than or equal to 48M (actually decimal 50,331,648 to be exact). </p> | ||
<p> | <p> | ||
For example, if BSIZE | For example, if <var>BSIZE</var> is 16M, <var>BRECPPG</var> cannot be more than 3. </p></li> | ||
<li>FILEORG | <li>The <var>FILEORG</var> X'200' bit cannot be set for files with hash key or sorted file organization.</li> | ||
</ul> | </ul> | ||
</blockquote> | </blockquote> | ||
Line 239: | Line 239: | ||
<p>Model 204 now lets you define a field whose value is [[Field design (File management)#Automatic fields|automatically maintained]].<br/>A field can count occurrences of another field so that every store or delete of the field occurrence changes the count in the automatic field. Automatic fields are defined with the following attributes:</p> | <p>Model 204 now lets you define a field whose value is [[Field design (File management)#Automatic fields|automatically maintained]].<br/>A field can count occurrences of another field so that every store or delete of the field occurrence changes the count in the automatic field. Automatic fields are defined with the following attributes:</p> | ||
<ul> | <ul> | ||
<li>COUNT-OCCURRENCES-OF</li> | <li><var>COUNT-OCCURRENCES-OF</var></li> | ||
<li>CREATE-TIME</li> | <li><var>CREATE-TIME</var></li> | ||
<li>CREATE-TIMEUTC</li> | <li><var>CREATE-TIMEUTC</var></li> | ||
<li>CREATE-USER</li> | <li><var>CREATE-USER</var></li> | ||
<li>UPDATE-TIME</li> | <li><var>UPDATE-TIME</var></li> | ||
<li>UPDATE-TIMEUTC</li> | <li><var>UPDATE-TIMEUTC</var></li> | ||
<li>UPDATE-USER</li> | <li><var>UPDATE-USER</var></li> | ||
</ul> | </ul> | ||
The value of an automatic field is updated at the start of a transaction by Model 204 and you cannot set it explicitly by a program. Any valid update statement causes the appropriate time and user stamps to be updated. For example, the time and user stamps will be undated when DELETE FOO(8) is processed, even if there are no occurrences of FOO in the record and an actual update does not take place. | The value of an automatic field is updated at the start of a transaction by Model 204 and you cannot set it explicitly by a program. Any valid update statement causes the appropriate time and user stamps to be updated. For example, the time and user stamps will be undated when <code>DELETE FOO(8)</code> is processed, even if there are no occurrences of FOO in the record and an actual update does not take place. | ||
Once you define an automatic value for a field, you cannot redefine the automatic value. | Once you define an automatic value for a field, you cannot redefine the automatic value. | ||
Line 254: | Line 254: | ||
===Concatenated fields=== | ===Concatenated fields=== | ||
Model 204 now lets you define [[Field design (File management)#Concatenated fields|concatenated fields]]. | Model 204 now lets you define [[Field design (File management)#Concatenated fields|concatenated fields]]. | ||
<p>Fields that make up concatenated field values must be | <p> | ||
Fields that make up concatenated field values must be <var>AT-MOST-ONE</var>, <var>EXACTLY-ONE</var>, or <var>OCCURS</var> 1 and must all be in the same field group context (or not in a field group). Fields that occur in all field groups (<var>FIELDGROUP *</var>) cannot be used in a concatenation.</p> | |||
If a concatenated field becomes longer than 255 bytes after adding separator and escape characters, the update request is cancelled. | If a concatenated field becomes longer than 255 bytes after adding separator and escape characters, the update request is cancelled. | ||
Line 261: | Line 262: | ||
<p>Model 204 version 7.5 introduces the new <var>[[DEFINE FIELD command|DEFINE FIELD]]</var> attributes described in this section. These attributes apply to all fields in Model 204. </p> | <p>Model 204 version 7.5 introduces the new <var>[[DEFINE FIELD command|DEFINE FIELD]]</var> attributes described in this section. These attributes apply to all fields in Model 204. </p> | ||
<p class="note"><b>Note:</b> These attributes all require that the [[FILEORG parameter|FILEORG | <p class="note"><b>Note:</b> These attributes all require that the <var>[[FILEORG parameter|FILEORG]]</var> parameter X'100' bit must be set on the file containing the fields.</p> | ||
<p> | <p> | ||
Changes in the new field attributes are detected during the redefinition of an existing field. When such a change is detected, the following messages might be issued:</p> | Changes in the new field attributes are detected during the redefinition of an existing field. When such a change is detected, the following messages might be issued:</p> | ||
Line 271: | Line 272: | ||
DEFINED AS A FIELD], NEW DEFINITION IGNORED</p> | DEFINED AS A FIELD], NEW DEFINITION IGNORED</p> | ||
<p>The table below lists the new field attributes. </p> | <p> | ||
The table below lists the new field attributes. </p> | |||
<table> | <table> | ||
<tr class="head"> | <tr class="head"> | ||
<th>Attribute</th><th>Abbreviation</th><th>Description</th> | <th>Attribute</th><th>Abbreviation</th><th>Description</th> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>[[DEFINE_FIELD_command#Ordered_index_CHUNK_attribute|CHUNK]]</td><td>CNK</td><td>Defines "OI chunks" of data in Ordered Index numeric range fields to enable more efficient searching.</td> | <td>[[DEFINE_FIELD_command#Ordered_index_CHUNK_attribute|CHUNK]]</td> | ||
<td>CNK</td> | |||
<td>Defines "OI chunks" of data in Ordered Index numeric range fields to enable more efficient searching.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#CONCATENATION-OF .28CAT.29 attribute|CONCATENATION-OF]]</td> | ||
<td>(CAT)</td> | |||
<td>Lists the fields that make up a concatenated field</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td nowrap | <td nowrap>[[Field design (File management)#Counting occurrences of a field|COUNT-OCCURRENCES-OF]]</td> | ||
<td>(CTO)</td> | |||
<td>Automatically maintains a count of the number of occurrences of the specified field.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#Automatic Fields|CREATE-TIME]]</td> | ||
<td>(CRTM)</td> | |||
<td>Captures the time when the field was created, as of the start of the transaction.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#Automatic Fields|CREATE-TIMEUTC]]</td> | ||
<td>(CRTMU)</td> | |||
<td>Captures the Coordinated Universal Time when the field was created, as of the start of the transaction.</td> | |||
</tr> | </tr> | ||
<tr><td | |||
<tr> | |||
<td>[[Field design (File management)#Automatic Fields|CREATE-USER]]</td> | |||
<td>(CRUS)</td> | |||
<td>Captures the user ID of the user who created the field.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#DATETIME-GE .28DTGE.29.2C DATETIME-GT .28DTGT.29.2C DATETIME-LE .28DTLE.29.2C and DATETIME-LT .28DTLT.29 attributes|DATETIME]]</td> | ||
<td>(DT)</td> | |||
<td>Specifies the format of the date and time data stored in Table B. The default is YYYYMMDDHHMISSXXXXXX.</td> | |||
</tr> | </tr> | ||
<tr><td | |||
<tr><td>[[Field design (File management)#DATETIME-GE .28DTGE.29.2C DATETIME-GT .28DTGT.29.2C DATETIME-LE .28DTLE.29.2C and DATETIME-LT .28DTLT.29 attributes|DATETIME-GE]]</td> | |||
<td>(DTGE)</td> | |||
<td>With DATETIME-GT, DATETIME-LE, and DATETIME-LT, used to establish a range for date/time values. Specifies that the date/time value must be later than or the same as the date/time value that follows. </td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#DATETIME-GE .28DTGE.29.2C DATETIME-GT .28DTGT.29.2C DATETIME-LE .28DTLE.29.2C and DATETIME-LT .28DTLT.29 attributes|DATETIME-GT]]</td> | ||
<td>(DTGT)</td> | |||
<td>Specifies that the date/time value must be later than the date/time value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#DATETIME-GE .28DTGE.29.2C DATETIME-GT .28DTGT.29.2C DATETIME-LE .28DTLE.29.2C and DATETIME-LT .28DTLT.29 attributes|DATETIME-LE]]</td> | ||
<td>(DTLE)</td> | |||
<td>Specifies that the date/time value must be earlier than or the same as the date/time value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#DATETIME-GE .28DTGE.29.2C DATETIME-GT .28DTGT.29.2C DATETIME-LE .28DTLE.29.2C and DATETIME-LT .28DTLT.29 attributes|DATETIME-LT]]</td> | ||
<td>(DELT)</td> | |||
<td>Specifies that the date/time value must be earlier than or the same as the date/time value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#DEFAULT-VALUE .28DV.29 attribute|DEFAULT-VALUE]]</td> | ||
<td>(DV)</td> | |||
<td>Specifies the value to use for the field when the record is created and no value has been assigned to the field. | |||
(The value of the STORE-DEFAULT setting determines whether the DEFAULT-VALUE is physically stored on the record or if it is just used as the default value when the field is missing.)</td> | (The value of the STORE-DEFAULT setting determines whether the DEFAULT-VALUE is physically stored on the record or if it is just used as the default value when the field is missing.)</td> | ||
</tr> | </tr> | ||
<tr><td | |||
<tr> | |||
<td>[[Field design (File management)#ESCAPE .28ESC.29 attribute|ESCAPE]]</td> | |||
<td>(ESC)</td> | |||
<td>Specifies an escape character to insert before separator and escape characters in a concatenated field, differentiating those characters from real data. The default value is X’01’.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#AT-MOST-ONE.2C REPEATABLE and EXACTLY-ONE attributes|EXACTLY-ONE]]</td> | ||
<td>(EXONE)</td> | |||
<td>Specifies that a field always has exactly one occurrence in its record or field group context. The default value is 1.</td> | |||
</tr> | </tr> | ||
<tr><td | |||
<tr><td>[[Field design (File management)#FIELDGROUP attribute|FIELDGROUP]]</td> | |||
<td>(FG)</td> | |||
<td>Specifies the name of the field group that the defined field is associated with (contained in).</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#FLOAT-GE .28FLTGE.29.2C FLOAT-GT .28FLTGT.29.2C FLOAT-LE .28FLTLE.29 and FLOAT-LT .28FLTLT.29 attributes|FLOAT-GE]]</td> | ||
<td>(FLTGE)</td> | |||
<td>With FLOAT-GT, FLOAT-LE, and FLOAT-LT, used to establish a range for float values when defining a field. Specifies that the float value must be greater than or equal to the value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#FLOAT-GE .28FLTGE.29.2C FLOAT-GT .28FLTGT.29.2C FLOAT-LE .28FLTLE.29 and FLOAT-LT .28FLTLT.29 attributes|FLOAT-GT]]</td> | ||
<td>(FLTGT)</td> | |||
<td>Specifies that the float value must be greater than the value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#FLOAT-GE .28FLTGE.29.2C FLOAT-GT .28FLTGT.29.2C FLOAT-LE .28FLTLE.29 and FLOAT-LT .28FLTLT.29 attributes|FLOAT-LE]]</td> | ||
<td>(FLTLE)</td> | |||
<td>Specifies that the float value must be less than or equal to the value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#FLOAT-GE .28FLTGE.29.2C FLOAT-GT .28FLTGT.29.2C FLOAT-LE .28FLTLE.29 and FLOAT-LT .28FLTLT.29 attributes|FLOAT-LT]]</td> | ||
<td>(FLTLT)</td> | |||
<td>Specifies that the float value must be less than the value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#INTEGER-GE .28INTGE.29.2C INTEGER-GT .28INTGT.29.2C INTEGER-LE .28INTLE.29 and INTEGER-LT .28INTLT.29 attributes|INTEGER-GE]]</td> | ||
<td>(INTGE)</td> | |||
<td>With INTEGER-GT, INTEGER-LE, and INTEGER-LT, used to establish a range for integer values when defining a field. Specifies that the integer value must be greater than or equal to the value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#INTEGER-GE .28INTGE.29.2C INTEGER-GT .28INTGT.29.2C INTEGER-LE .28INTLE.29 and INTEGER-LT .28INTLT.29 attributes|INTEGER-GT]]</td> | ||
<td>(INTGT)</td> | |||
<td>Specifies that the integer value must be greater than the value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#INTEGER-GE .28INTGE.29.2C INTEGER-GT .28INTGT.29.2C INTEGER-LE .28INTLE.29 and INTEGER-LT .28INTLT.29 attributes|INTEGER-LE]]</td> | ||
<td>(INTLE)</td> | |||
<td>Specifies that the integer value must be less than or equal to the value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#INTEGER-GE .28INTGE.29.2C INTEGER-GT .28INTGT.29.2C INTEGER-LE .28INTLE.29 and INTEGER-LT .28INTLT.29 attributes|INTEGER-LT]]</td> | ||
<td>(INTLT)</td> | |||
<td>Specifies that the integer value must be less than the value that follows.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#LENGTH-EQ .28LEQ.29 attribute|LENGTH-EQ]]</td> | ||
<td>(LEQ)</td> | |||
<td>Used to set a length constraint when defining a field. Specifies the required length of a field.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#LENGTH-GE .28LGE.29 attribute|LENGTH-GE]]</td> | ||
<td>(LGE)</td> | |||
<td>Specifies the minimum length of a field.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#LENGTH-LE .28LLE.29 attribute|LENGTH-LE]]</td> | ||
<td>(LLE)</td> | |||
<td>Specifies the maximum length of a field.</td> | |||
</tr> | </tr> | ||
<tr><td | |||
<tr><td>[[Field design (File management)#Setting a pattern for a field value: the LIKE attribute|LIKE]]</td> | |||
<td>(LK)</td> | |||
<td>Sets a pattern that a field value must conform to.</td> | |||
</tr> | |||
<tr> | |||
<td>[[Field design (File management)#BLOB.2C CLOB.2C and MINLOBE attributes|MINLOBE]]</td> | |||
<td>(MLBE)</td> | |||
<td>Defines the minimum size of a BLOB or CLOB field value that will be stored in Table E. This avoids wasting Table E pages on small values that could be stored in Table B (or Table X). The default is 0.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>< | <td>NO-DOMAIN-CONSTRAINTS</td> | ||
<td/> | |||
<td>Specifies that the field has no [[Field design (File management)#Content constraints|content constraint]] attributes. Useful with <var>[[REDEFINE command|REDEFINE]]</var> to remove existing constraints on a field.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>NO-DEFAULT-VALUE</td> | ||
<td>(NDV)</td> | |||
<td>Specifies that the field has no default value. Useful with <var>[[REDEFINE command|REDEFINE]]</var> to remove an existing default value on a field.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td>[[Field design (File management)#SEPARATOR .28SEP.29 attribute|SEPARATOR]]</td> | ||
<td>(SEP)</td> | |||
<td>Specifies a separator character used between field values in concatenated fields. The default is X’00’.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#STORE-DEFAULT .28SD.29 and STORE-NULL .28SN.29 attributes|STORE-DEFAULT]]</td> | ||
<td>(SD)</td> | |||
<td>Specifies whether to physically store the default value for the field in each record. The default option is LITERAL (LIT), which stores a literal string.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#STORE-DEFAULT .28SD.29 and STORE-NULL .28SN.29 attributes|STORE-NULL]]</td> | ||
<td>(SN)</td> | |||
<td>Specifies whether to physically store the null value for the field in each record. The default option is LITERAL (LIT), which stores a literal string.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#Automatic Fields|UPDATE-TIME]]</td> | ||
<td>(UPTM)</td> | |||
<td>Captures the time when the field was updated, as of the start of the transaction.</td> | |||
</tr> | </tr> | ||
<tr><td | |||
<tr> | |||
<td>[[Field design (File management)#Automatic Fields|UPDATE-TIMEUTC]]</td> | |||
<td>(UPTMU)</td> | |||
<td>Captures the Coordinated Universal Time when the field was updated, as of the start of the transaction.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>[[Field design (File management)#Automatic Fields|UPDATE-USER]]</td><td | <td>[[Field design (File management)#Automatic Fields|UPDATE-USER]]</td> | ||
<td>(UPUS)</td> | |||
<td>Captures the user ID of the user who updated the field.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>[[Field design (File management)#UTF-8 and UTF-16 attributes|UTF-8]]</td><td | <td>[[Field design (File management)#UTF-8 and UTF-16 attributes|UTF-8]]</td> | ||
< | <td>(UTF8)</td> | ||
<td>Data is stored in UTF-8 format and is treated as unicode data inside SOUL programs. The default is EBCDIC.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>[[Field design (File management)#UTF-8 and UTF-16 attributes|UTF-16]]</td> | ||
<td>(UTF16)</td> | |||
<td>Data is stored in UTF-16 format and is treated as unicode data inside SOUL programs. The default is EBCDIC.</td> | |||
</tr> | </tr> | ||
</table> | </table> |
Revision as of 02:12, 28 February 2014
These release notes list the enhancements and other changes contained in Model 204 version 7.5, which is still in development. Until the commercial release of the software, Rocket reserves the right to add to, remove, or change anything described herein.
Overview
These release notes contain installation and features information for the Rocket Model 204 version 7.5.0 release. Before beginning your installation, please read through this information about product installation and changes.
New in this release
This section summarizes the new features and enhancements for Model 204 version 7.5.0.
SOUL (User Language)
The significantly enhanced, object-oriented, version of User Language is now called SOUL. All existing User Language programs will continue to work under SOUL, so User Language can be considered to be a subset of SOUL, though the name "User Language" is now deprecated.
- Sirius object-oriented language extensions integration
- ECF statements can pass up to 60 parameters
System Management
- Writing records to the SMF data set without an SVC installed
Performance
- GTBL can be stored above the bar
- Support for physical field groups
Operating system requirements
Requirements for Model 204 version 7.5 are still being determined.
Model 204 version 7.4 required the following operating system support:
- For IBM z/OS: Version 1 Release 7 is sufficient for all new functionality except for the following
features:
- Large (1 MB) page support requires Version 1 Release 9.
- Extended address volumes (EAV) requires Version 1 Release 12.
- For IBM z/VM: Version 5 Release 4.0 or later
- For IBM z/VSE:
- Version 5 Release 1 or
- Version 4 Release 3 or
- Version 4 Release 2.1 or
- Version 4 Release 2.0, with these program temporary fixes (PTFs) installed:
- UD53436
- UD53437
- UD53438
- UD53439
Hardware requirements
Requirements for Model 204 version 7.5 are still being determined.
Model 204 version 7.4 required the IBM z/890 or above processor, except for the following feature:
The large (1 MB) page support feature requires the IBM z10 or above processor.
Model 204 compatibility with operating systems
Content for version 7.5 is still to be determined.
For information on Model 204 certification with IBM operating systems, see: http://www.rocketsoftware.com/products/rocket-model-204/technical-information
Model 204 compatibility with Connect*
All supported versions of Connect* are compatible with Model 204 version 7.5.0.
However, CLOB/BLOB support requires Connect* version 7.4.0 or higher. Use of Connect* versions earlier than version 7.4.0 to SELECT, UPDATE, or INSERT CLOB/BLOB data will fail and might produce unexpected application behavior and/or return an error.
Connect* version 7.5.0 is compatible with versions of Model 204 that are earlier than version 7.5.0.
SOUL (User Language) enhancements
Much of the substantial new and enhanced functionality described in the following subsections is available as a result of the acquisition of Sirius Software. The functionality that is the subject of the initial subsection, "Object oriented programming," motivates the new name for User Language, SOUL, often thought of as Simple Objective User Language.
Object oriented programming
As of version 7.5 of Model 204 (and backward compatible with existing User Language applications), the SOUL language is equipped with Object-Oriented Programming(sometimes abbreviated OO) capabilities comparable or superior to other contemporary object oriented languages. The OO features were formerly contained in the Janus SOAP User Language Interface, and you can use Object oriented programming in SOUL as an entry point to the extensive SOUL OO documentation. In particular, you might want to begin with the OO tutorial.
Record capacity increase
In this version of Model 204, the record limit is increased from sixteen million records to forty-eight million records per file.
New SOUL statements
Non-OO enhancements in SOUL
- Mixed-case SOUL
- Longstrings
- Unicode
- Double quotation marks for quoted strings
- At sign (@) on right side of assignment
- Is Defined and Is Visible tests
- Copy qualifier for subroutine parameters
- Normal syntax for LOB fields
- Implicit concatenation
- Relative values for Model 204 numeric parameters
- SOUL macro facility
- External Call support for Stringlists and $lists
SOUL support for field groups
ADD (or INSERT or DELETE) FIELDGROUP statements
The ADD FIELDGROUP statement and the INSERT FIELDGROUP statement behavior parallels the behavior of the ADD and INSERT statements for simple fields. The DELETE FIELDGROUP statement handles more situations and is therefore more complex. See Updating field groups for details.
Statements for handling field groups
SOUL now provides several statements for handling field groups:
- FOR FIELDGROUP
- FOR ALL OCCURRENCES OF FIELDGROUP (FAO FIELDGROUP)
- FOR EACH OCCURRENCE OF FIELDGROUP (FEO FIELDGROUP)
See Special statements for multiply occurring fields and field groups for details.
Output statements for field groups
The following SOUL statements provide display output for Model 204 field groups:
AUDIT ALL FIELDGROUP INFORMATION (AAFGI) PRINT ALL FIELDGROUP INFORMATION (PAFGI)
See Output statements for details.
Field group SORT support
You can use field groups in sorted sets. SORT statement support for field groups lets you sort records with field groups as well as reference field groups in the sorted sets. For example, you can issue a FAO FIELDGROUP
statement or FEO FIELDGROUP
statement against the sorted set.
EQ VALUE retrieval condition
SOUL now provides the EQ VALUE clause to support expressions in FIND statements.
See Using expressions in FIND statements for details.
EQ WITH retrieval condition for concatenated fields
SOUL now provides the EQ WITH clause for retrieving CONCATENATION-OF fields. Model 204 automatically builds the concatenated value.
See Using expressions in FIND statements and EQ with retrieval condition for concatenated fields for details.
External Call Facility (ECF)
EXTERNAL CALL statements can now pass more parameters. The maximum number of parameters that can be passed in an EXTERNAL CALL statement has been increased from 40 to 60. The maximum value setting for ECPSIZE is increased from 1310680 to 1966020 to accommodate the extra parameters.
ECF is available only on z/OS systems. For more information about the External Call Facility and the EXTERNAL CALL statement, see the Rocket Model 204 System Manager's Guide.
REPEAT statement UNTIL option
The REPEAT statement now supports the UNTIL option. In previous releases, only REPEAT WHILE was supported.
A REPEAT UNTIL statement enters the loop body prior to checking the condition.
New and changed classes and methods
New HttpRequest TranslateTable property
The TranslateTable HttpRequest property makes it possible to set the translate table to be used for EBCDIC to ASCII translation of data in an HttpRequest object.
New InvalidTranslateTable class
Objects of the InvalidTranslateTable exception class are thrown when a requested system translate table cannot be found. It is currently thrown only by the TranslateTable HttpRequest property.
New bit manipulation String functions
New bit manipulation functions BitClearString, BitCountString, BitFlipString, BitSetString, and BitValueString make it easier to manipulate the bits in a string.
New InvalidBitNumber class
Objects of the InvalidBitNumber exception class are thrown when an invalid bit number is requested by a bit manipulation function. It is currently thrown only by the BitClearString, BitFlipString, BitSetString, and BitValueString functions.
The Base64Encode=False argument can be used with the LoadFromRecord method to disable any base64 encoding of field values.
Alternatively, the CharacterMap argument (with a non-null value) can be used to disable any base64 encoding of field values, and to specify translations, which can avoid request translation due to X'00' and/or untranslatable characters in field values.
These arguments are also added to the NewFromRecord and ToXmlDoc methods.
New option for AppendJournalData
The QT option is added to the AppendJournalData method, to include QT type audit entries.
New parameter for AddField
The Strip option is added to the Screen class method AddField to allow suppression of leading and trailing blank removal from input fields.
New and changed $functions
Former Sirius $functions
The $functions referred to by the link below are added to SOUL as a result of the acquisition of Sirius Software:
$SNDMAIL attachment ASCII translation
The $SNDMAIL function can now translate an attachment to ASCII before sending it. This translation is useful if the $SNDMAIL attachment is a CLOB (CHARACTER-LARGE-OBJECT) such as a text document.
The $SNDMAIL function now accepts an optional parameter after the name of the attached object. If this parameter is set to 'C' (or to a percent variable with the value 'C'), the object in the buffer is translated to ASCII before being attached to the email.
If this parameter is not specified, the object in the buffer is sent as a binary object.
In this example:
%RC = $SNDMAIL(%SUBJECT,,%BODY,%FROM,%TO,,,,'CLOB.TXT','C')
the CLOB.TXT
attachment will be translated to ASCII before being attached to the email.
New function calls for field groups
When a field group is added, a field group ID is assigned to the field group.
- $FIELDGROUPID returns the ID of the current field group.
- $FIELDGROUPOCCURRENCE returns the current occurrence number of the field group.
Sirius products and product enhancements
These products are now available to Model 204 customers as separately purchased items as a result of the acquisition of Sirius Software.
Changes to Janus SSL support
Under Model 204 version 7.5, Janus products:
- Drop support for version 2 of the Secure Sockets Layer encryption protocol (SSL V2)
You can use the SSLPROT parameter on the JANUS DEFINE command for a port to explicitly specify, or limit, the SSL protocols available for a connection. The SSLPROT documentation describes the SSL protocols that Janus supports.
Janus support for SSL V2 also included an option to specify a larger than "legal" input buffer for connections not strictly conforming to the V2 standard. You specify that buffer size with the JANUS DEFINE SSLIBSIZE parameter, and the SSLIBSIZE maximum value as of Model 204 V7.5 is reduced (from 32767 bytes) to the SSL maximum allowed size of 16384.
- Add support for new ciphers and TLS levels
You can use the SSLCIPH JANUS DEFINE parameter to specify the SSL ciphers available for a connection. The SSLCIPH documentation describes the SSL ciphers that Janus supports.
Support for physical field groups
Model 204 supports non-relational, de-normalized data structures. Many Model 204 sites have enjoyed significant cost and performance benefits from efficiently processing multiply occurring fields. This concept has been enhanced to introduce physical field groups that let you view and process groups of fields as a logical entity.
You can define a physical field group only for files with the FILEORG X'100' setting. To take advantage of field groups in files defined before Model 204 version 7.5, you must reorganize the files with a FILEORG setting that includes the X'100' bit.
Files with FILEORG X'100' can have up to 32,000 fields.
For more information, see field group design.
Increased Table B record number capacity
Table B can now contain up to 48M possible record numbers. (The previous limit was 16M.)
Set the FILEORG X'200' bit at file creation time to allow for the increased record numbers.
Notes:
- The limit for BSIZE remains at 16M.
BSIZE * BRECPPG
must be less than or equal to 48M (actually decimal 50,331,648 to be exact).For example, if BSIZE is 16M, BRECPPG cannot be more than 3.
- The FILEORG X'200' bit cannot be set for files with hash key or sorted file organization.
Automatic fields
Model 204 now lets you define a field whose value is automatically maintained.
A field can count occurrences of another field so that every store or delete of the field occurrence changes the count in the automatic field. Automatic fields are defined with the following attributes:
- COUNT-OCCURRENCES-OF
- CREATE-TIME
- CREATE-TIMEUTC
- CREATE-USER
- UPDATE-TIME
- UPDATE-TIMEUTC
- UPDATE-USER
The value of an automatic field is updated at the start of a transaction by Model 204 and you cannot set it explicitly by a program. Any valid update statement causes the appropriate time and user stamps to be updated. For example, the time and user stamps will be undated when DELETE FOO(8)
is processed, even if there are no occurrences of FOO in the record and an actual update does not take place.
Once you define an automatic value for a field, you cannot redefine the automatic value.
Concatenated fields
Model 204 now lets you define concatenated fields.
Fields that make up concatenated field values must be AT-MOST-ONE, EXACTLY-ONE, or OCCURS 1 and must all be in the same field group context (or not in a field group). Fields that occur in all field groups (FIELDGROUP *) cannot be used in a concatenation.
If a concatenated field becomes longer than 255 bytes after adding separator and escape characters, the update request is cancelled.
New field attributes
Model 204 version 7.5 introduces the new DEFINE FIELD attributes described in this section. These attributes apply to all fields in Model 204.
Note: These attributes all require that the FILEORG parameter X'100' bit must be set on the file containing the fields.
Changes in the new field attributes are detected during the redefinition of an existing field. When such a change is detected, the following messages might be issued:
M204.1260: [FIELD | FIELDGROUP] WAS PREVIOUSLY DEFINED WITH DIFFERENT ATTRIBUTES, NEW [FIELD | FIELDGROUP] OPTIONS IGNORED
or
M204.2884: [FIELD WAS PREVIOUSLY DEFINED AS A FIELDGROUP | FIELDGROUP WAS PREVIOUSLY DEFINED AS A FIELD], NEW DEFINITION IGNORED
The table below lists the new field attributes.
Attribute | Abbreviation | Description |
---|---|---|
CHUNK | CNK | Defines "OI chunks" of data in Ordered Index numeric range fields to enable more efficient searching. |
CONCATENATION-OF | (CAT) | Lists the fields that make up a concatenated field |
COUNT-OCCURRENCES-OF | (CTO) | Automatically maintains a count of the number of occurrences of the specified field. |
CREATE-TIME | (CRTM) | Captures the time when the field was created, as of the start of the transaction. |
CREATE-TIMEUTC | (CRTMU) | Captures the Coordinated Universal Time when the field was created, as of the start of the transaction. |
CREATE-USER | (CRUS) | Captures the user ID of the user who created the field. |
DATETIME | (DT) | Specifies the format of the date and time data stored in Table B. The default is YYYYMMDDHHMISSXXXXXX. |
DATETIME-GE | (DTGE) | With DATETIME-GT, DATETIME-LE, and DATETIME-LT, used to establish a range for date/time values. Specifies that the date/time value must be later than or the same as the date/time value that follows. |
DATETIME-GT | (DTGT) | Specifies that the date/time value must be later than the date/time value that follows. |
DATETIME-LE | (DTLE) | Specifies that the date/time value must be earlier than or the same as the date/time value that follows. |
DATETIME-LT | (DELT) | Specifies that the date/time value must be earlier than or the same as the date/time value that follows. |
DEFAULT-VALUE | (DV) | Specifies the value to use for the field when the record is created and no value has been assigned to the field. (The value of the STORE-DEFAULT setting determines whether the DEFAULT-VALUE is physically stored on the record or if it is just used as the default value when the field is missing.) |
ESCAPE | (ESC) | Specifies an escape character to insert before separator and escape characters in a concatenated field, differentiating those characters from real data. The default value is X’01’. |
EXACTLY-ONE | (EXONE) | Specifies that a field always has exactly one occurrence in its record or field group context. The default value is 1. |
FIELDGROUP | (FG) | Specifies the name of the field group that the defined field is associated with (contained in). |
FLOAT-GE | (FLTGE) | With FLOAT-GT, FLOAT-LE, and FLOAT-LT, used to establish a range for float values when defining a field. Specifies that the float value must be greater than or equal to the value that follows. |
FLOAT-GT | (FLTGT) | Specifies that the float value must be greater than the value that follows. |
FLOAT-LE | (FLTLE) | Specifies that the float value must be less than or equal to the value that follows. |
FLOAT-LT | (FLTLT) | Specifies that the float value must be less than the value that follows. |
INTEGER-GE | (INTGE) | With INTEGER-GT, INTEGER-LE, and INTEGER-LT, used to establish a range for integer values when defining a field. Specifies that the integer value must be greater than or equal to the value that follows. |
INTEGER-GT | (INTGT) | Specifies that the integer value must be greater than the value that follows. |
INTEGER-LE | (INTLE) | Specifies that the integer value must be less than or equal to the value that follows. |
INTEGER-LT | (INTLT) | Specifies that the integer value must be less than the value that follows. |
LENGTH-EQ | (LEQ) | Used to set a length constraint when defining a field. Specifies the required length of a field. |
LENGTH-GE | (LGE) | Specifies the minimum length of a field. |
LENGTH-LE | (LLE) | Specifies the maximum length of a field. |
LIKE | (LK) | Sets a pattern that a field value must conform to. |
MINLOBE | (MLBE) | Defines the minimum size of a BLOB or CLOB field value that will be stored in Table E. This avoids wasting Table E pages on small values that could be stored in Table B (or Table X). The default is 0. |
NO-DOMAIN-CONSTRAINTS | Specifies that the field has no content constraint attributes. Useful with REDEFINE to remove existing constraints on a field. | |
NO-DEFAULT-VALUE | (NDV) | Specifies that the field has no default value. Useful with REDEFINE to remove an existing default value on a field. |
SEPARATOR | (SEP) | Specifies a separator character used between field values in concatenated fields. The default is X’00’. |
STORE-DEFAULT | (SD) | Specifies whether to physically store the default value for the field in each record. The default option is LITERAL (LIT), which stores a literal string. |
STORE-NULL | (SN) | Specifies whether to physically store the null value for the field in each record. The default option is LITERAL (LIT), which stores a literal string. |
UPDATE-TIME | (UPTM) | Captures the time when the field was updated, as of the start of the transaction. |
UPDATE-TIMEUTC | (UPTMU) | Captures the Coordinated Universal Time when the field was updated, as of the start of the transaction. |
UPDATE-USER | (UPUS) | Captures the user ID of the user who updated the field. |
UTF-8 | (UTF8) | Data is stored in UTF-8 format and is treated as unicode data inside SOUL programs. The default is EBCDIC. |
UTF-16 | (UTF16) | Data is stored in UTF-16 format and is treated as unicode data inside SOUL programs. The default is EBCDIC. |
System management enhancements
Writing records to the SMF data set
Having Model 204 write records to the SMF data set no longer requires the installation of an SVC.
Therefore, the SMFSVC parameter is no longer required and, if present, will be ignored and flagged with the following informational message:
M204.0204: PARAMETER SMFSVC OBSOLETE AND NOT RESET
However, the SMFLORN and SMFSLRN parameters must still be present in CCAIN if SMF records are required.
Performance enhancements
64-bit addressing and Above The Bar (ATB) storage
Model 204 moves above the (2G) bar to increase scalability, performance, and growth potential. With this release of Model 204, 64-bit addressing becomes the de facto standard for all subsequent versions.
In addition to the ATB support for FTBL released with Model 204 version 7.4, version 7.5 adds ATB support for GTBL, NTBL, and QTBL, using the same SERVNSA and SERVNSSZ parameters used for FTBL.
When using non-swappable ATB server space, each user will get SERVNSSZ bytes of ATB space, even if the thread is logged out or running resident requests. For greater efficiency, Model 204 version 7.5 also provides swappable ATB server areas that can supplement or replace the non-swappable areas. These swappable ATB server areas are controlled by the SERVGA and SERVGSZ parameters.
GTBL in above the bar storage
GTBL can now be placed into non-swappable server storage area above the bar. In order to store GTBL in ATB storage:
- Increase the SERVNSSZ parameter by the GTBL size.
- Set the second byte of the SERVNSA parameter to
X’80’
, so the value of SERVNSA isX'00800000'
.
Note:
The settings for each server table above the bar are independent of each other.
So if both FTBL and GTBL are placed above the bar, then SERVNSA should be set to X'02800000'
.
NTBL and QTBL in above the bar storage
Needs details . . .
XmlDoc pages in above the bar buffer pool
With this release, the CCATEMP pages used for XmlDoc objects use the above the bar buffer pool, which may allow the below the bar buffer pool to be reduced, perhaps providing more storage for server areas. It also may provide a reduction in CPU utilization, especially when the TEMPPAGE parameter is used to allocate CCATEMP in memory.
Improved range searching by Ordered Index (OI) chunk
The new CHUNK attribute for the DEFINE FIELD command enables more efficient range searching on Ordered Index numeric (ORDERED NUMERIC) fields. CHUNK improves performance of the "RANGE" and "BETWEEN" FIND terms. The CHUNK field attribute defines a subrange ("OI chunk") of the data range. Searching by OI chunks on a range of data requires fewer scans of the ordered index entries to find the desired data. Once OI chunk fields are defined, they are automatically used by FIND processing, so no application code needs to be changed.
After defining an ORDERED NUMERIC field, you define one or more related OI chunk fields containing data from the original base field rounded down by a specified CHUNK size.
Example:
DEFINE FIELD YYYYMMDD WITH ORDERED NUMERIC DEFINE FIELD YYYYMM WITH ORDERED NUMERIC INVISIBLE CHUNK 100 FOR YYYYMMDD DEFINE FIELD YYYY WITH ORDERED NUMERIC INVISIBLE CHUNK 10000 FOR YYYYMMDD
CHUNK requires FILEORG=x'100' and the INVISIBLE and ORDERED NUMERIC field attributes.
MQ/204 enhancements
Freeing MQ/204 subtasks and associated storage
The new MQDELDTP PST (pseudo subtask) checks for MQ/204 subtasks that are in a delayed detach state. MQDELDTP detaches MQ/204 subtasks that have finished their work and releases their associated storage areas.
Other features
AT-MOST-ONE and field groups
The AT-MOST-ONE attribute is now applicable to a field group definition.
Storing and updating LOBs
All large object data (LOBs) in a FILEORG=X’100’ file are chained. There are four bytes per Table E page overhead for chained LOBs. The pages used by a chained LOB are not contiguous.
Handling LOBs in FILEORG=X’100’ files also has the following effects:
- LOBs can be changed as needed. The RESERVE clause is ignored in a LOB field ADD statement processing, as well as the STORE RECORD statement processing of fieldname=value pairs. Consequently, the CHANGE statement does not fail because of insufficient reserved space. If the CHANGE statement requires that a LOB field be extended, it is.
- The value of the EHIGHPG parameter is always one less than the high water mark of the number of pages used to hold LOBs. (Unless none were ever added, in which case it is zero, not -1).
- The value of the EPGSUSED parameter is always the number of pages currently being used to hold LOBs.
- The COMPACTE command does not process FILEORG=X’100’ files, just as it does not process a file created in V6R1 or earlier. Thus, issuing a COMPACTE command for a FILEORG X’100’ file produces an error message.
- The TABLEE command effectively does a VIEW ESIZE EHIGHPG EPGSUSED for a FILEORG X’100’ file. Consequently there are no TABLEE overhead pages in a FILEORG=X’100’ file.
Constraint attributes
You can set range constraints on fields using the constraint attributes. Each set of range attributes is comprised of four attributes (GE, GT, LE, LT) that you can use to establish a range for integer values, float values, or date-time stamp values. The types of range attributes are mutually exclusive. For example, you cannot define a field with the FLOAT-GE and INTEGER-LE attributes.
If a range constraint is redefined, it replaces the existing field constraint.
Note: The range constraints do not have to match the data type of the stored field. That is, you could have a date-time constraint for a STRING field or an integer constraint for a FLOAT field, and so on.
You can set the following constraint attributes:
- date-time value
- pattern for a field value
- length
- integer value
See Content constraints for details.
Changes to journal record layouts
Four bytes have been added to the journal record header for user statistic entries: 1 byte to hold the IODEV number and 3 bytes for future use.
All user since-last statistics (LAST=) lines will now show the IODEV= value:
ST $$$ USERID='userid' ACCOUNT='accountname' IODEV='devicetype' LAST='acty'
For more information on journal records and user statistics, see the Rocket Model 204 System Manager's Guide.
Compatibility issues
This section describes any compatibility issues between V7.5 and prior versions of Model 204. An incompatibility arises if an operation that was previously performed without any indication of error, now operates (given the same inputs and conditions) in a different manner.
A normal bug fix resolving behavior that, although not indicating an error, was "clearly and obviously" incorrect, also introduces an incompatibility, but it might not be included below.
Change to the Ordered Index layout
Formerly all ORDERED NUMERIC fields came after all ORDERED CHARACTER fields in the Ordered Index. Now, the fields are interspersed in field code order.
ZFIELD Image
The ZFIELD image has been updated for this release. The image is used with $LSTFLD and $FDEF function calls. One change is that FDEF is now longer (to accommodate FDEF1, LOOPVAR, and FDEF2).
INTERCOMM is no longer supported
The INTERCOMM interface supports the use of Teletype and 3270 terminals in line-at-a-time mode, using the Model 204 IODEV=29 thread type.
INTERCOMM is no longer supported as of Model 204 version 7.5.
See the Rocket Model 204 Terminal User's Guide for a discussion of terminal interfaces.
User PDL overflow
The new SEQPDL parameter might require you to increase the size of the user Push Down List (using UTABLE LPDLST) by up to 3072 bytes, or more if you specify a value for SEQPDL that is larger than the 4096 default value.
LPDLST parameter maximum value
The maximum value for the LPDLST parameter has been increased from 32760 to 65536.
SSLIBSIZE parameter maximum value
The maximum value for the JANUS DEFINE command SSLIBSIZE parameter has been decreased from 32767 to 16384.
New and changed commands
DECREASE (new option: DYNAMIC)
The DYNAMIC option on the DECREASE command lets you decrease Table B dynamically, even if the file is open by others or has requests compiled against it.
DEFINE DATASET (new parameter: GDGRECNT)
The GDGRECNT parameter for the DEFINE DATASET command causes Model 204 to check the catalog information for the latest relative GDG generation number whenever allocating a GDG data set.
DEFINE FIELD (new or changed attributes)
In Model 204 version 7.5, the DEFINE FIELD command has new attributes information:
- the new CHUNK attribute, which improves the efficiency of range finds using ordered index processing
- many other FILEORG=x'100' related new or changed field attributes
DEFINE FIELDGROUP (new in V7.5)
The DEFINE FIELDGROUP command establishes the contents of a field group, including the fields and field groups associated with the field group being defined.
DELETE FIELD (changed to handle CAT and CTO fields)
The DELETE FIELD command has been changed to take CONCATENATION-OF (CAT) and COUNT-OCCURRENCES-OF (CTO) fields into account. DELETE FIELD does not allow deletion of fields referred to by an existing CAT or CTO field.
DELETE FIELDGROUP (new in V7.5)
The DELETE FIELDGROUP command deletes a field group from a Model 204 file.
DISPLAY FIELD (new option: COMMA)
In Model 204 version 7.5, the DISPLAY FIELD command has added the COMMA option, which uses commas to separate displayed field attributes.
DISPLAY MODMAP (new in V7.5)
DISPLAY MODMAP displays the Model 204 link map in address order. System manager privileges are required.
REGENERATE and REGENERATE ONEPASS (improved TO UPDATE option)
The TO UPDATE option of the REGENERATE and REGENERATE ONEPASS commands can now handle multiple files.
If TO UPDATE nn OF id is specified, it must appear only on the first FILE statement, and no other ‘TO’ options are allowed on subsequent files.
All additional files will be recovered as though they each specified the same 'TO UPDATE' option. Once the 'end of transaction' is reached, further processing will stop and all inflight transactions will be backed out.
RENAME FIELDGROUP (new in V7.5)
The RENAME FIELDGROUP command changes the name of a field group.
UNICODE (new codepage: 1154)
The UNICODE command now accepts 1154 as a codepage name. This codepage has 92 Unicode characters in the range U+0400 through U+045F, representing the Basic Russian alphabet and all of the Cyrillic extensions excepting the four which have grave accents.
Reliability enhancements
SEQPDL parameter
The new SEQPDL parameter controls the amount of free space that must be present in the user's Push Down List (PDL) in order for the SOUL sequencer to proceed with the next quad code. The minimum and default value is 4096 bytes. The maximum value is 8192 bytes. SEQPDL is a user resettable parameter and can be set on the user's parameter line or reset with the UTABLE command.
Formerly 1024 bytes of PDL free space were hardcoded internally in the Model 204 core. With 1024 bytes there were edge cases where abends would break files, resulting in ERROR 2126 USER'S PUSHDOWN LIST OVERFLOWED. SEQPDL is provided to allow enough PDL space so that all of the lower level journaling routines can process error conditions without breaking files.
If your applications are using close to the amount of PDL space currently set by the LPDLST value, you might need to increase LPDLST to reflect SEQPDL's increase in free space.
New and changed parameters
In addition to the following specific parameter changes, Model 204 parameter descriptions, for example as displayed by the VIEW command, are now in mixed case (unless translated to uppercase due to UPCASMSG.)
Note: The Sirius Mods parameters are merged with the Model 204 base as of Model 204 version 7.5, and they are available to all version 7.5 customers. The combined set of parameters is displayed on the List of Model 204 parameters page. The former Sirius parameters in that listing are marked with an (S).
DSPOPT (change to default setting)
The default setting for DSPOPT has been changed from X'00' to X'01'. The X'01' setting allocates space for servers in memory in chunks of 4K pages, not as a permanent contiguous area. This allocation lets you move fewer 4K pages, keeping the virtual storage allocated for servers in memory less fragmented and possibly using fewer paging tables.
ECPSIZE (change to max value)
The maximum value setting for ECPSIZE has been increased from 1310680 to 1966020 to accommodate more External Call Facility parameters.
FILEORG (new settings)
-
The FILEORG X'100' setting for enhanced data handling files is now available.
X'100' enables a number of enhancements to the file structure, including:
- Support for physical field groups
- The definition of as many as 32000 fields in a file
- System maintained Automatic fields
- Field constraints providing content validation
- Improved space management of fields containing Large Objects
- New DEFINE FIELD attributes, such as CHUNK
If X'100' is selected, the X'80' bit (optimized field extraction files) is automatically set.
- The FILEORG X'200' setting for large file support is now available.
X'200' allows files to hold up to 48 million records.
FISTAT (change to X'08' setting)
The FISTAT X'08' (file full) setting is now automatically cleared in a transaction back out file if table D is increased enough so that DSIZE is greater than or equal to DPGSRES+DPGSUSED.
MISCOPT (obsolete)
The MISCOPT parameter is now obsolete. In Model 204 version 7.5, MISCOPT is still viewable but is not resettable.
MODTIM (new in V7.5)
The MODTIM system parameter displays the most recent assembly date and time of the Model 204 load module.
OUTPUT (change to allow OUTPUT=DUMMY)
IODEV=3 threads definitions now allow OUTPUT=DUMMY. When defining IODEV=3 threads, if output is not required, the OUTPUT parameter can be coded as OUTPUT=DUMMY.
For example:
IODEV=3,INPUT=IOD3IN1,OUTPUT=DUMMY
This means that no DD statement is required for the output data set, and in cases where many IODEV=3 threads are defined to simulate a large number of users, this enhancement will reduce the number of DD statements required by one half.
RECLOCKO (X'04' bit now ignored)
The RECLOCKO X'04' bit is now ignored, and the extra information of the conflicting user number and lock time are now always available.
LRETBL (setting increase may be necessary)
Because there might be a slight increase in record locking table usage in V7.5, an increase in the value of the LRETBL parameter is advised. The amount of the increase is best estimated by multiplying by 16 the HWM HEADERS
value (from a MONITOR ENQ report), then dividing by the value of the NUSERS parameter. For example, if HWM HEADERS = 100000
and NUSERS=2000
, the recommended LRETBL increase is 16*100000/2000
, or 800.
RESPAGE (new in V7.5)
The RESPAGE parameter activates the APSY Precompiled Procedures in storage feature using above the bar pages by specifying a number of 4K operating system pages.
RETRVKEY (change to allow forward retrieve PF key)
New in this release, if you specify a non-zero setting of RETRVKEY:
- If you have set the
X'01'
orX'10'
bits of the RETRVOPT parameter, you can use a forward retrieve PF key, in addition to the backward retrieve PF key specified by RETRVKEY.Note: If either of these bits is set, the
X'02'
bit is strongly recommended as well. - The size of the allocated storage area, and hence the number and length of input lines available for retrieval, is specified by the value of the RETRVBUF parameter.
SEQPDL (new in V7.5)
The SEQPDL parameter controls the amount of free space that must be present in the user's Push Down List in order for the SOUL sequencer to proceed with the next quad code. SEQPDL allows enough PDL space for the lower level journaling routines to handle error conditions properly without breaking files and causing ERROR 2126 USER'S PUSHDOWN LIST OVERFLOWED.
SESMAXTO (new in V7.5)
The SESMAXTO parameter can be used limit the maximum session timeout value or to cause all current closed sessions to be immediately discarded.
SMFSVC (obsolete)
The SMFSVC parameter is obsolete as of Model 204 version 7.5.
UPCASMSG (new in V7.5)
The UPCASMSG parameter can be used to translate messages issued by Model 204 to uppercase; otherwise (depending on the message being issued) they are displayed in mixed (upper and lower) case.
Documentation conversion
Rocket Model 204 documentation is being converted from individual manuals in PDF format to a set of cross-linked HTML articles in this integrated wiki, M204wiki.
As of Model 204 release 7.5, several manuals are now in wiki format and the rest remain in PDF format, available from the Rocket Software Documentation Library.
For details, see Model 204 and Sirius documentation.
New and updated messages
M204.0141: BUG .. DUPLICATE FILE NAME IN CP RECORD
Explanation: A duplicate file name was encountered while attempting to add a deferred update dataset to the file directory during recovery. This indicates a potential problem in the Model 204 software.
System Manager Response: Contact Customer Support with the following documentation:
- Audit trail from the previous run
- Journal from the previous run
Return Codes: E 0 4 AD OPR
M204.0204: PARAMETER SMFSVC OBSOLETE AND NOT RESET
Explanation: Writing records to the SMF data set no longer requires the installation of an SVC. The
SMFSVC parameter is therefore obsolete and cannot be reset.
System Manager Response: No response required.
Return Codes: I 0 0 AUDITMS
M204.0332 and M204.0336
These messages indicate problems with the CRAM interface. The visibility of these messages has been improved by:
- writing the message to the operator and the JESLOG
- writing the message as an ER line in CCAAUDIT
- setting the return code to 80
0332:
RC nn FROM CRFS OPEN
Explanation: The run has failed to initialize due to problems with the CRAM interface.
The possible formats of this message are:
Format 1: RC nn FROM CRFS OPEN/PUT/GET
Format 2: ECB postcode FROM CRFS PUT/GET
- Format 1 indicates that Model 204 module CRFS attempted to open channel, send a message down the channel, or receive a message from a channel. CRAM was unable to satisfy the request. The message states the return code and the operation attempted.
- Format 2 indicates that Model 204 module CRFS received an unexpected post code from CRAM while attempting an I/O operation on a channel. The message states the post code and the operation attempted.
Possible return codes include the following values:
Value | Description |
---|---|
4 | INVALID FUNCTION |
8 | CB FORMAT ERROR |
16 | (OPEN MAST) CHANNEL ALREADY OPEN |
20 | (OPEN USER) NO USER LINES FREE |
24 | (OPEN) SUBTASKS NOT PROPERLY OPENED |
12 | (READ/WRITE) ICB NOT OPEN |
16 | (READ/WRITE) OTHER TASK HAS DIED |
20 | (READ/WRITE) UNEXPECTED COMMAND |
28 | NOT ENOUGH STORAGE |
99 | There is no SVC defined in the IGCLM244 module and the XMEMOPT ’80’ bit must be set for an SVC-less installation |
110 | (VMCF WRITE) MESSAGE LIMIT EXCEEDED |
System Manager Response: Contact Technical Support and have the audit trail available.
Return Codes: C 80 80 AUDITER NOTERM OPR
0336:
RC nn FROM CRIO OPEN
Explanation: The run has failed to initialize due to problems with the CRAM interface.
The possible formats of this message are:
Format 1: RC nn FROM CRIO OPEN/PUT/GET
Format 2: ECB postcode FROM CRFS PUT/GET
- Format 1 indicates that Model 204 module CRIO attempted to open a channel, send a message down a channel, or receive a message from a channel. CRAM was unable to satisfy the request. The message states the return code and the operation attempted. For example, the return code 16 indicates that the CRAM channel is already open.
- Format 2 indicates that Model 204 module CRFS received an unexpected post code from CRAM while attempting an I/O operation on a channel. The message shows the post code and the operation attempted.
Possible return codes include the following values:
Value | Description |
---|---|
4 | INVALID FUNCTION |
8 | CB FORMAT ERROR |
16 | (OPEN MAST) CHANNEL ALREADY OPEN |
20 | (OPEN USER) NO USER LINES FREE |
24 | (OPEN) SUBTASKS NOT PROPERLY OPENED |
12 | (READ/WRITE) ICB NOT OPEN |
16 | (READ/WRITE) OTHER TASK HAS DIED |
20 | (READ/WRITE) UNEXPECTED COMMAND |
28 | NOT ENOUGH STORAGE |
99 | There is no SVC defined in the IGCLM244 module and the XMEMOPT ’80’ bit must be set for an SVC-less installation |
110 | (VMCF WRITE) MESSAGE LIMIT EXCEEDED |
System Manager Response: Contact Technical Support and have the audit trail available.
Return Codes: C 80 80 AUDITER NOTERM OPR
0434:
NJBUFF SET TO %C
Explanation: TBD
0761:
ATRPG*ASTRPPG EXCEEDS maxentries
Explanation: You attempted to initialize a file that was created with invalid parameters. The number of dictionary entries is determined by the product of the parameters ATRPG and ASTRPPG. The maximum allowed product is 4000 (attribute dictionary entries), or 32000 for a FILEORG=x'100' file. The INITIALIZE command is rejected.
Response: The file must be recreated. Retry the CREATE command specifying ATRPG and ASTRPPG parameter values such that the product of the two is less than maxentries.
C 0 4 AUDITER
0790:
FILE TOO BIG
Explanation: The total number of records possible in Table B exceeds 342 segments for files that do not have the FILEORG X'200' bit set and 1024 segments for files that have the FILEORG X'200' bit set.
The number of potential record numbers per segment is 49,152.
The number of possible segments in Table B is calculated by the following formula:
((BSIZE * BRECPPG) / 49,152)) + (1 if remainder not 0)
If the result exceeds 342 or 1024 respectively too many segments result and MODEL 204 rejects the CREATE command.
File manager response: Make the file smaller (by specifying a smaller BSIZE or smaller BRECPPG), or divide the file into smaller pieces and use the file group feature to process them as a single logical file.
Return Codes: C 0 4 AUDITER
0797:
BSIZE*BRECPPG EXCEEDS MAXIMUM VALUE
Explanation: The product of BSIZE and BRECPPG must not exceed 16,777,216 for regular Model 204 files (which do not have the FILEORG X'200' bit set) and 50,331,648 for files that have the FILEORG X'200' bit set. These numbers specify the maximum number of records allowed in a single Model 204 file.
The CREATE or INCREASE command is rejected.
File manager response: Retry the command, specifying values for BSIZE and BRECPPG so that BSIZE*BRECPPG does not exceed the limit. See Managing file and table sizes for more information.
Return Codes: C 0 4 AUDITER
1050: CCATEMP FULL: operation or pooltype
Explanation: The operation being performed required an extra page from CCATEMP, but there were no free pages available. CCATEMP is defined by the system manager and provides a set of work pages that are assigned on request to various users. If a request gets this message, it might be because some other user is holding a large number of CCATEMP pages.
The message specifies either the operation being performed, or the section ("pool") of CCATEMP that was full.
operation can be one of:
- $BLDPROC
- "USE PROCEDURE" COMMAND
- WHILE INITIALIZING SORT
- FOR FRV KEYS
- WHILE GENERATING RECORDS TO BE SORTED
- WHILE GENERATING ORDERED INDEX SORTED RECORDS
- WHILE PERFORMING SORT
pooltype can be one of:
- SMALL MODEL PAGE POOL
- SMALL MODEL PAGE POOL AND EXPANSION PAGE POOL
The current request is cancelled.
If the operation was $BLDPROC or USE PROCEDURE COMMAND, then the temporary procedure that was being written is deleted, except for its very last CCATEMP page, which is retained for information purposes.
In some cases the user is restarted and, if the user was in the process of updating any files, MODEL 204 marks them physically inconsistent.
CCATEMP pages below 64K are allocated from the small model pool. CCATEMP pages above 64K are allocated from the expansion area pool.
The pooltype specified in the message indicates whether you exceeded the capacity of the small model pool or both the small model and expansion area pools.
Response: Notify your system manager.
System Manager response: Recover the physically inconsistent files using one of the following procedures:
- Roll back/roll forward
- File reorganization procedure described in File reorganization and table compaction
- The RESTORE command for restoring previously dumped copies
This message is informational, but it indicates a need to increase the space allocation for CCATEMP. As the size of CCATEMP is fixed at initialization, it is necessary to bring down MODEL 204 to increase it.
Return codes: E 60 60 AUDITAD CANCEL NOTERM OPR
1052:
LOUTPB %C TO %C
Explanation:
LOUTPB has been increased or decreased, to the value given in the message.
With a full-screen terminal the value is 1.5 times the minimum for that model number, rounded
up to a multiple of 8.
A model 2 terminal results in a LOUTPB of 3200.
A model 5 terminal results in a LOUTPB of 5664.
If NBKPG is greater than 0, the largest allowable value for LOUTPB is PAGESZ minus 40, so the value can be decreased for this reason.
User Response: No response is needed. This message is for information only.
Return Codes: I 0 0 AUDITAD
1060:
%C NOT ALLOWED WITH NON SWAPPABLE SERVERS
Explanation: The service requested is not compatible with non-swappable servers.
System Manager Response: Remove any non-swappable server settings and restart Model 204 to repeat the service.
Return Codes: E 0 4 AUDITMS
1131:
CAN'T action
Explanation: The procedure action cannot be taken for one of the following reasons:
- The procedure is in use by another user.
- The procedure is not in the file.
- The user does not have the correct privileges to change the procedure.
- If a RENAME or ASSIGN has been attempted, the alias might already exist.
Response: Make sure that the procedure name is spelled correctly.
If the named procedure is in use, retry the command when the procedure is no longer in use. Otherwise, arrange to place the
procedure in the file or to obtain the privileges to change the procedure.
Return Codes: C 0 4 SUFFIX AUDITER
The return codes for message M204.1149 have changed.
M204.1149: parameter_name has been set to its minimum|maximum value: value
Explanation: You have attempted to reset a parameter either below the minimum or above the maximum allowed for it. Model 204 has reset the parameter to the correct minimum or maximum.
Response: Retry the command with a value within the correct range, or leave the value as is, since Model 204 has already reset the parameter to the correct minimum or maximum.
For PARAMETER=ESIZE, if you specify:
- A zero value, which is the equivalent of Not Applicable, no pages are allocated for Table E.
- A non-zero value, then the minimum of 20 pages allocated for Table E is enforced.
Return Codes: I 0 0 AUDITMS
1260:
[FIELD | FIELDGROUP] WAS PREVIOUSLY DEFINED WITH DIFFERENT ATTRIBUTES, NEW [FIELD | FIELDGROUP] OPTIONS IGNORED
Explanation: A DEFINE [FIELD | FIELDGROUP] command has attempted to define an existing field with different attributes.
Response: If you wish to redefine the attributes of the field, you must issue the REDEFINE [FIELD | FIELDGROUP] command. Notify your file manager.
Return Codes: C 0 4 AUDITER
1307:
%C LOGON REJECTED - reason text (REASON CODE: %X)
Explanation: The MODEL 204 3270 terminal handler has rejected a logon request from a 3270 terminal for the reason stated. The following reason codes are defined:
- There are no control blocks available for new logons. Increase the number of IODEV 7 terminal definitions. The reason text is: NOT ENOUGH 3270 TERMINALS.
- The terminal has been defined with a non-3270 transmission services profile. The LU type must be 2. The reason text is: LU TYPE NOT = 2.
- The terminal has been defined to require definite responses to messages it sends inbound to the host. The transmission services profile must be 3.
The reason text is: TS PROFILE NOT = 3. - There has been an error on this terminal. This is a retryable error. The reason text is: LOSTERM SET FOR THIS TERMINAL.
- The terminal definition is in use. This error should not occur. The reason text is: TERMINAL ALREADY IN USE.
System Manager Response: Contact your VTAM systems programmer to correct the VTAM definition.
Return Codes: E 0 4 AD SAVE NOTERM OPR
1346:
SERVER AREA GREATER THAN CYLINDER CAPACITY FOR THIS DEVICE. CYLINDER SIZE = nnn BYTES.
Explanation: The number of bytes specified for the largest server area (SERVSIZE) is greater than nnn, the number of bytes contained in a cylinder for the type of disk device on which your CCASERVR (CCASRVR for DOS) data set resides.
System Manager Response: Do one of the following:
- ensure that the largest SERVSIZE value does not exceed nnn
- place your server data sets on a type of disk device that has a larger cylinder capacity
- place CCASERVR in storage. (See the "CCASERVR in Storage feature" section in the Rocket Model 204 System Manager's Guide.)
Return Codes: C 96 96 AUDITER
M204.1381 is a new informational message issued during REGENERATE to help verify that the journal data provided in CCAGEN is from the correct CCAJRNL. The 58 bytes printed are the journal header of each journal block as described in the Rocket System Manager’s Guide, Using System Statistics chapter, Table A-2. The message has three variations:
-
1381: CCAGEN: FIRST 5 CCAJRNL BLOCKS + LAST BLOCK IN HEX
Explanation: The first 58 bytes, in hex, of the first five CCAJRNL blocks and the last CCAJRNL block read from CCAGEN follow in CCAAUDIT.
-
M204.1381: PASS1: 006000020113214F155421910000000000CB... M204.1381: PASS1: 0AD000020113214F155421910000000100CB... M204.1381: PASS1: 07BF008A0113214F155421920000000200CB... M204.1381: PASS1: 0B5E00020113214F155422000000000300CB... M204.1381: PASS1: 0AAF00120113214F155422030000000400CB... M204.1381: LASTB: 00C900020113214F155930280000337100CB...
Explanation: This is an example of the first 5 CCAJRNL blocks and the last block read from CCAGEN during pass 1 of REGENERATE.
-
1381: CCAGEN BLOCK COUNT: nnnn
Explanation: This message provides the count of CCAJRNL blocks read from CCAGEN.
Response: This message is informational only; no response is required.
Return Codes: 1 0 0 AUDITAD
1382:
Chunk size nn used: flags=X"nn", low=nn, high=nn
Explanation: This is a debugging error message.
Response: No response is required.
Return Codes: 1 0 0 AUDITMS
1387:
ALLOCATE failed; DDNAME=ddname,DSNAME=dsname could not be located
Explanation: An attempt to allocate an existing data set, data set name=dsname, failed because the specified dsname was not found in the catalog or the catalog could not be accessed.
M204.1387 replaces
M204.1070: ALLOCATE FAILED - reason
with additional information regarding the failure of the ALLOCATE command. However, M204.1070 remains in use by Janus/TCPIP for a different purpose.
Response: Correct the data set name or ensure that the data set exists and is cataloged.
Return Codes: C 0 4 AUDITER
1388:
CHUNK size exceeds maximum of nnn
On a DEFINE field command, the chunk size specified is too large.
User response: Specify a chunk size less than or equal to the maximum.
Return codes: C 0 4
1393:
CHUNK clause not of format "CHUNK chunkSize FOR chunkTarget"
Explanation: On a DEFINE FIELD, the syntax of the CHUNK clause was not in the format shown in this message.
File manager response: Correct the DEFINE FIELD command that has the incorrect CHUNK clause syntax.
Return Codes: C 0 4 AUDITER
1394:
CHUNK chunkSize VALUE INVALID: reason
Explanation: On a DEFINE FIELD, the value specified for the size of a CHUNK is invalid;
"reason" indicates why.
File manager response: Correct the DEFINE FIELD command that has the invalid CHUNK size.
Return Codes: C 0 4 AUDITER
1395:
CHUNK target field invalid type: reason
Explanation: On a DEFINE FIELD, the field specified as a CHUNK target is not a field type that can be used as a chunk target, for the reason specified.
File manager response: Correct the DEFINE FIELD command containing the invalid CHUNK target type.
Return Codes: C 0 4 AUDITER
1396:
CHUNK fields must be INVISIBLE ORDERED NUMERIC
Explanation: On a DEFINE FIELD, an attempt was made to create a CHUNK field that was not INVISIBLE ORDERED NUMERIC, which is a requirement of chunk fields.
File manager response: Correct the DEFINE FIELD command that has the invalid CHUNK target type.
Return Codes: C 0 4 AUDITER
1397:
A CHUNK field was defined, %F may no longer be opened with M204 releases prior to V7R5
Response: This is an informational message. No action is required.
Return Codes: I 0 0 AUDITMS
1399:
Same server area defined for server above the bar and non swappable server
Explanation: The same server table has been defined in SERVNSA and SERVGA.
Response: Correct the SERVNSA and/or SERVGA settings.
Return Codes: E 0 4 AUDITMS
1400:
Server areas ATB require server swapping in memory
Explanation: Parameters indicated that server areas ATB were used in the run where CCASERVR dataset was defined.
System Manager Response: Either remove the server areas ATB parameters or use server swapping in memory.
Return Codes: E 0 4 AUDITMS
1402:
Invalid value for chunk target: fname='val'; values must be -999999999999999 -> 999999999999999
Explanation: If a chunk target is any field type besides DATETIME, any value stored in it must be within the range shown in the error message.
Response: Correct the value being stored.
System manager response: Correct the value being stored.
Return Codes: C 0 4 CANCEL
1403:
Increase SERVGSZ to at least %C for required ATB server areas
Explanation: The total size of ATB server areas is larger than the ATB server size defined in SERVGSZ.
User Response: If the message is issued by the UTABLE command, decrease the size of the ATB server areas.
System Manager Response: If the message is issued at initialization, either increase SERVGSZ or decrease the ATB server area size.
Return Codes: E 80 80 AUDITAD OPR
1412:
service NOT ALLOWED WITH ATB SERVERS
Explanation: The requested service is not compatible with ATB (above the bar) servers.
System manager response: Remove the ATB server parameters and restart Model 204.
Return Codes: E 0 4 AUDITMS
1433:
CCAGEN: IS EMPTY ¦ CCAGEN: PERMANENT I/O ERROR
Explanation: There were no valid records found in the journal(s) pointed to by CCAGEN, or a permanent I/O error was encountered.
System manager response: Verify that you have the correct journal(s) for the run. If I/O errors were detected while reading in CCAGEN, the appropriate error messages will have been issued before this message. Correct the error and rerun media recovery. If the problem remains unclear, contact Technical Support and have the following documentation available:
- Audit trail
- Snap dump
- UTILJ output for CCAGEN dataset
Return Codes: C 0 4 AUDITER
1489:
NOT ENOUGH FILE SPACE TO CONTINUE PROCEDURE DEFINITION - %F
Explanation: There is no room in the file to store the procedure being entered with the PROCEDURE command.
If… | Then Model 204… |
Error occurs after the first line of procedure text has been stored | Keeps the partial procedure |
You are entering the text at your terminal | Ends procedure definition immediately |
Procedure text is supplied by another procedure | Flushes the remainder of the input |
Procedure text is supplied in a batch input stream (CCAIN) | Flushes the remainder of the procedure text and resumes processing after the END PROCEDURE command |
Response: Create space in the file by deleting unwanted procedures or increasing Table D with the INCREASE command. Replace the partial procedure using the PROCEDURE command, or use the EDIT command to supply the missing text.
Return Codes: C 0 4 CANCEL AUDITER
1587:
FSCB full, IMAGE too large: LFSCB required = num, bytes available in FSCB = num
Explanation: The value specified in an IDENTIFY statement with the LEN or OCCURS option causes the size of the associated IMAGE to overflow the full screen buffer (FSCB). The FSCB is a server work area that is used to hold a compiled IMAGE definition.
Response: Use the VIEW LFSCB command to determine the current size of the FSCB. Use the UTABLE command to increase the value of the LFSCB parameter. Check the User Language request for programming errors that might cause the value specified in the IDENTIFY statement to be too large. Retry the request.
Return Codes: C 0 4 CANCEL AUDITER
1589:
Maximum IMAGE length is 32767: LFSCB required = num
Explanation: An attempt has been made to define an image greater than 32K.
Response: Redefine the image so that it is not greater than the maximum length of 32767.
Return Codes: C 0 4 CANCEL AUDITER
1938:
REQUEST FOR SPACE IN TABLE E EXTENDS BEYOND EHIGHPG, BIT MAP PAGES ARE SCANNED FOR FREESPACE
Explanation: A User Language request attempted to store a large object and all of the append pages in Table E have been allocated. Model 204 must scan the bit map pages for previously allocated Table E pages to look for free space to store the large object.
File manager response: The file should be reorganized to compact fragmented Table E space.
Return Codes: I 0 0
2126:
USER'S PUSHDOWN LIST OVERFLOWED
Explanation: The user's pushdown list is an internal stack for maintaining state information for user threads across internal Model 204 subroutines. The user pushdown list lives in each user's server. Its size requirement depends on the complexity of the command or User Language request.
This message is issued whenever Model 204 detects that pushdown list data has spilled into adjacent control structures. Because of potential corruption the user is restarted.
Response: Increase the size of the user pushdown list by using the LPDLST parameter of the UTABLE command. Notify your system manager.
System Manager Response: If this becomes a frequent occurrence, consider more permanent changes to LPDLST and SERVSIZE, since the pushdown list is a server component.
Return Codes: C 0 4 CANCEL
2329:
subsystem name AT location name UNAVAILABLE
Explanation: The indicated subsystem at the specified node is not available for use due to one or more errors occurring at the specified node during start or login processing.
Response: Notify the system manager or try again later.
System manager response: If the subsystem is started, stop the subsystem and resolve communications errors or other errors which occurred at the specified node. After resolving error, use the START SUBSYSTEM command to make the subsystem available for general use. Check to make sure that the LOCATION parameter was set properly in the CCAIN input stream for the Online.
Return Codes: C 0 4
2551:
{FPL|FCT PG1} IS INVALID FOR FILE: filename
Explanation: If the message says FPL, then the FPL (file parameter list) for the associated file is invalid. This could be the result of an incorrect DD, FILEDEF or DLBL statement.
If the message says FCT PG1, then the existence page array page is invalid.
File manager response: If the DD, FILEDEF or DLBL statement is correct and points to the correct data set, then the file must be restored from a backup.
Return Codes: C 0 4 AUDITER
2651:
NOT ALL THREADS PROCESSED FOR IODEV %C
Explanation: The run is terminated because either:
- The number of threads specified by NUSERS has been initialized, but there are fewer users of the specified IODEV type than expected.
- The DUPTERM number specified by the IODEV card could not be initialized because it exceeded the number of NUSERS.
Response: Check that NUSERS matches the total of the listed IODEVs, plus one extra for USER 0. Check also the NOTERM/DUPTERM parameter for the specified IODEV card.
Return Codes: E 80 80 ER
2719:
OPEN %C FAILED. UPDATE STATEMENTS ALREADY COMPILED, READ ONLY PRIVILEGES INSUFFICIENT
Explanation: The OPEN or OPENC User Language statement was issued from a request to reopen a file with read-only privileges. However, that request had already been compiled with update statements against the file.
Response: In a User Language request, you cannot use the User Language OPEN or OPENC statement to reopen a file with read-only privileges, if that request contains updates statements against the same file.
Descriptor code: C 0 4 CANCEL
2739:
PARAMETER parm CANNOT BE RESET ON USER 0’S PARAMETER LINE: VALUE IGNORED
Explanation: You reset parameter parm on the User 0 parameter line, but the parameter cannot be set there. The value is ignored, the default value for this parameter remains in effect.
Response: Remove parm from the User 0 parameters, since it will not change the value of the parameter.
Descriptor code: E 0 4 AD
2746:
XSIZE*XRECPPG MAY NOT BE 1 NOR EXCEED 536870911
Explanation: The product of XSIZE and XRECPPG must not exceed 16777216 times 32 minus one, or 536870911. This specifies the maximum number of extension records allowed in a single Model 204 file when using Table X. Also, setting both XRECPPG and XSIZE to 1 is invalid.
The CREATE command is rejected.
Response: Retry the command specifying values for XSIZE and XRECPPG whose product does not exceed the 526870911 limit. Refer to the Rocket Model 204 File Manager’s Guide for more information on file sizes.
Descriptor code: C 0 4
2774:
ANOTHER command COMMAND IS IN PROGRESS
Explanation: An INCREASE or DECREASE command or auto increase is taking place while another INCREASE, DECREASE, or auto increase has not finished yet.
File manager response: Repeat the command after the completion of the auto increase or previous INCREASE or DECREASE command.
Descriptor code: C 0 4
2826:
%F VERSION IS PRE 6.3. COMPACTION NOT ALLOWED
Explanation: An attempt was made to compact a file created prior to Model 204 version 6.3.
File manager response: Reorganize the file using Model 204 version 6.3.
Return Codes: C 0 4 AUDITER
2831:
UPDATES TO DTS FILES NOT SUPPORTED IN THIS ENVIRONMENT
Explanation: DTS files cannot be updated in IFAM, SQL, or PQO environments.
Response: Do not attempt to update DTS file.
Return Codes: C 0 4
2833:
FIELDS CANNOT BE DEFINED IN A FILE WITH ATRPG*ASTRPPG>4000
Return Codes: C 0 4
2836:
VALUE OF PARAMETER %C INVALID—RESET TO %C
Explanation: This is an informational message only.
A parameter was specified with an incorrect value. It has been reset to an internally calculated value that will accommodate other parameter settings. See the description of the parameter named to see what that calculation involves.
System Manager Response: The parameter has been reset. No response required.
Return Codes: I 0 0 AUDITMS
2838:
%C ONLY VALID IN FILEORG X’100’ FILES
Return Codes: C 0 4
2839:
%C IS A %C, NOT A %C
Return Codes: C 0 4 ECHO
2841:
REMOTE FIELDGROUPS NOT SUPPORTED
Return Codes: C 0 4 ECHO
2842:
INVALID CONTEXT FOR FIELDGROUP
Return Codes: C 0 4 ECHO
2843:
MAXIMUM FIELDGROUP ID EXCEEDED IN RECORD %R IN %F
Return Codes: C 0 4 CANCEL
2844:
MIX OF FIELDS AND FIELDGROUPS, NAME =
Return Codes: C 0 4 SUFFIX ECHO
2845:
INVALID FIELDGROUP CONTEXT FOR %C
Explanation: The $function was used outside of field group context.
Descriptor code:C 0 4 SUFFIX ECHO
2846:
INVALID FIELDGROUP CONTEXT FOR %C
Return Codes: C 0 4 CANCEL
2847:
FIELDGROUP CONTEXT LOST IN RECORD %R IN %F
Return Codes: C 0 4 CANCEL
2848: INVALID FIELDGROUP ID: %C
Return Codes: C 0 4 CANCEL
2849: REQUIRED KEYWORD %C MISSING
Return Codes: X 0 4 ECHO
2850:
%C VALUE MISSING
Return Codes: C 0 4
2851:
%C VALUE "%C" TOO BIG, MUST BE <%C BYTES
Return Codes: C 0 4
2852: UPDATE TO MISSING FIELDGROUP OCCURRENCE IN RECORD %R IN %F
Return Codes: C 0 4 CANCEL
2853: %C NOT ALLOWED FOR EXACTLY-ONE FIELD
Return Codes: C 0 4
2854: ATTEMPT TO DO %C FOR EXACTLY-ONE FIELD: %C
Return Codes: C 0 4 CANCEL
2855: FIELD DEPTH+LENGTH UNREPRESENTABLE IN RECORD %R IN %F
Return Codes: C 0 4 CANCEL
2856: FIELDNAME VARIABLE %C: EXPECTED %C, GOT %C
Return Codes: C 0 4 CANCEL
2857: %C FIELD NOT ALLOWED FOR %C FIELD
Return Codes: C 0 4
2858: FIELDGROUP CONTEXT MISMATCH BETWEEN COUNTOCCURRENCES- OF FIELD AND COUNTED FIELD
Return Codes: C 0 4
2859: NEW AUTOMATIC FIELD NOT ALLOWED FOR NON-EMPTY FILE
Return Codes: C 0 4
2860: FIELD %C ALREADY HAS A COUNT-OCCURRENCES-OF FIELD
Return Codes: C 0 4
2861: OCCURRENCE COUNTER %C OVERFLOWED
Return Codes: C 0 4 CANCEL
2862: ATTEMPT TO UPDATE AUTOMATIC FIELD %C
Return Codes: C 0 4 SUFFIX ECHO
2863: ATTEMPT TO DO %C FOR AUTOMATIC FIELD: %C
Return Codes: C 0 4 CANCEL
2865: ATTEMPT TO %C INVALID DATETIME VALUE: %C = %C
Return Codes: C 0 4 CANCEL
2866: FILE ALREADY HAS %C FIELD
Return Codes: C 0 4
2867: FIELDGROUP %C ALREADY HAS %C FIELD
Explanation: If you try to define a second update tracker field of the same type for the same field group, you will invoke message 2867, where %C represents:
- A CREATE-TIME
- A CREATE-TIMEUTC
- A CREATE-USER
- AN UPDATE-TIME
- AN UPDATE-TIMEUTC
- AN UPDATE-USER
Return Codes: C O 4
2868: MINLOBE MUST BE BETWEEN 0 AND %C'
Return Codes: C 0 4
2869:
CHANGE REFUSED: MINLOBE > 0 FOR filename FIELD fieldname
Return Codes: C 0 4 AUDITER
2870:
CHANGE REFUSED: MINLOBE > 0 FOR filename FIELD fieldname
Return Codes: C 0 4 CANCEL AUDITER
2871: FIELDGROUP CONTEXT MISMATCH BETWEEN CONCATENATION-OF FIELD AND COMPONENT FIELD'
Return Codes: C 0 4
2872: CONCATENATION VALUE TOO LONG FOR FIELD %C'
Return Codes: C 0 4 CANCEL
2873: CONCATENATION FIELD %C COMPONENT FIELD %C CONTAINS SEPARATOR CHARACTER'
Return Codes: C 0 4 CANCEL
2874: ATTEMPT TO %C A VALUE THAT'S %C: %C
Return Codes: C 0 4 CANCEL
2875: CONCATENATION LIST INVALID: %C'
Return Codes: C 0 4
2876: INVALID %C VALUE: %C'
Return Codes: C 0 4
2877: WITH CLAUSE INVALID: %C'
Return Codes: C 0 4 ECHO
2878: WITH CLAUSE INVALID: FIELD %C IN %F %C
Return Codes: C 0 4 CANCEL
2879: REMOTE ID %C MODE %C'
Return Codes: I 0 0 SAVE NOTERM OPR
2880: MEMORY DATASETS CANNOT BE PART OF MULTI-DATASET FILE
Return Codes: C 0 4
2881: DATA CONVERSION ERROR
Return Codes: C 0 4 CANCEL
2882:
Recovery journal (CCARF) version number is not supported
Explanation: A CCARF data set was provided as input to a recovery step, but that CCARF data set was produced by a different version of Model 204 than the version that is running recovery.
System manager response: Correct the data set name referenced in CCARF and ensure that it was produced by the version of Model 204 that you are using to run recovery.
Return codes: E 52 52 OPR
2883:
Mix of journal versions in recovery CCARF
Return codes: E 52 52 SNAP OPR
2884: [FIELD | FIELDGROUP] WAS PREVIOUSLY DEFINED AS A [FIELDGROUP | FIELD], NEW DEFINITION IGNORED
Return Codes: C 0 4
2885: INVALID FIELDGROUP ID: fieldgroup
Return Codes: C 0 4 CANCEL
2886: FIELDGROUP ID %C ALREADY EXISTS IN RECORD %R IN %F'
Return Codes: C 0 4
2903: FILEORG=X'100' IS NOT SUPPORTED DURING FLOD/FILELOAD
Return Codes: E 0 8
2916:
SERVNSSZ requires at least one area to be set in SERVNSA
Explanation: When the size of a non-swappable server area is indicated, at least one non-swappable server area must be indicated in SERVNSA.
Operator response: Correct the SERVNSA parameter setting.
Return Codes: E 0 4 AUDITMS
2921:
NON SWAPPABLE SERVER AREAS ARE NOT SUPPORTED IN VSE
Explanation: Non-swappable server areas ATB are not supported in VSE.
Operator response: Remove the parameters for non-swappable server areas.
Return Codes: E 0 4 AUDITMS
2922:
SERVNSA bit setting is not valid
Explanation: The bit setting in SERVNSA is not valid.
For release 7.4, valid bits are: X'02000000'
For release 7.5, valid bits are: X'02000000', X'00800000', X'00004000', and X'00002000'
Operator response: Correct the SERVNSA setting.
Return Codes: E 0 4 AUDITMS
2933:
'Module version mismatch, KOMM=%C, %C=% C'
Return Codes: E 0 4 SNAP
2934:
FILEORG X''200'' not supported for hashed or sorted file organizations
Explanation: Hashed or sorted files must be 16M files. The CREATE FILE command
is rejected.
File manager response: Remove the conflicting FILEORG parameter and reissue CREATE FILE.
Return Codes: E 0 4 AUDITMS
2935:
{CHUNK|CHUNK target} FIELDS MAY NOT BE RENAMED OR DELETED
File manager response: Do not attempt to RENAME or DELETE chunks or chunk targets.
Return Codes: C 0 4 AUDITER
2936:
A CHUNK FIELD OF SIZE nnn ALREADY EXISTS FOR THIS FIELD
Explanation: For a given CHUNK target field, duplicate chunk sizes are not permitted.
File manager response: Correct the DEFINE FIELD that caused the message.
Return Codes: C 0 4 AUDITER
2937:
CHUNK SIZE: nnn IS NOT AN INTEGRAL MULTIPLE/DIVISOR OF THE EXISTING CHUNK SIZE: nnn
Explanation: A CHUNK field's chunk size must be an integral multiple/divisor of all other chunk's sizes for a given chunk target.
This message identifies the existing chunk size that conflicts with the new one.
File manager response: Correct the DEFINE FIELD that caused the message.
Return Codes: C 0 4 AUDITER
2938:
YOU MAY NOT DEFINE MORE THAN 20 CHUNKS FOR A FIELD
Explanation: A given chunk target can have at most 20 chunks defined.
File manager response: Do not try to define more than 20 CHUNK fields for any given CHUNK target field.
Return Codes: C 0 4 AUDITER
2939:
%C has been set to its %C value: %C
Explanation: TBD
Return codes: I 0 0 AUDITMS
2940:
Use of filename after INITIALIZE keyword discouraged because it gave different results prior to version 7.5
Explanation: This message indicates that the format of the INITIALIZE command as entered does not conform to the syntax of:
INITIALIZE [KEEPDEF[S]]
Prior to version 7.5, it was possible to place any text on the INITIALIZE command, and if it was anything other than KEEPDEF[S], it was ignored. In version 7.5, the syntax of INITIALIZE command is checked for strict correctness.
If you have entered the name of the file being initialized AFTER the INITIALIZE command keyword, you can either correct the command (that is, remove the filename after the INITIALIZE command keyword) or use the MSGCTL M204.2940 command as described below so that the command can continue to work.
File manager response: The most direct response is to correct the command to conform to the proper syntax, that is, remove extraneous strings after the INITIALIZE command keyword.
System manager response: If the file manager has chosen to keep the filename after the INITIALIZE command keyword, and the filename is the same as the name of the file being initialized, you can have the following command executed at any time before the INITIALIZE command is executed:
MSGCTL M204.2940 NOCOUNT
This action represents a very special case for the NOCOUNT option of MSGCTL.
Normally, the NOCOUNT option only changes a message such that it does not increment the count of counting errors, but does not directly affect the operation which issued the error message.
For this message, however, setting the NOCOUNT operation indicates that this condition is to be allowed, and normal processing of the INITIALIZE command will continue.
Issuing the above MSGCTL command with version 7.5 of Model 204 will not present any risk of an incorrect operation of INITIALZE. The only caution to be observed is that in prior versions of Model 204, a filename after the INITIALIZE command keyword is NOT checked against the name of the file being initialized, and so the use of the filename after the INITIALIZE command keyword might be a risky practice if it is possible such a command might be used in a prior version of Model 204.
Return codes: C 0 4 AUDITER
2941:
FILE BEING INITIALIZED DOES NOT MATCH NAME GIVEN AFTER INITIALIZE COMMAND: %C
Explanation:
This message indicates that the format of the INITIALIZE command as entered does not conform to the syntax of:
INITIALIZE [KEEPDEF[S]]
Prior to version 7.5, it was possible to place any text on the INITIALIZE command, and if it was anything other than KEEPDEF[S], it was ignored. In version 7.5, the syntax of INITIALIZE command is checked for strict correctness.
In some cases, users have entered the name of the file being initialized AFTER the INITIALIZE command keyword, but this message indicates that whatever string you entered after the INITIALIZE command keyword is not the name of the file being initialized.
File manager response:
Correct the command. The most direct response is to correct the command to conform to the proper syntax: that is, remove extraneous strings after the INITIALIZE command keyword.
However, if the system manager has performed a MSGCTL M204.2940 NOCOUNT command, and you want to enter the correct filename on the INITIALIZE command, that will allow the INITIALIZE operation to proceed.
System manager response:
If the file manager is unable to correct the INITIALZE command, you can have the following commands executed at any time before the INITIALIZE command is executed:
MSGCTL M204.2940 NOCOUNT MSGCTL M204.2941 NOCOUNT
These actions represent a very special case for the NOCOUNT option of MSGCTL.
Normally, the NOCOUNT option only changes a message such that it does not increment the count of counting errors, but it does not directly affect the operation which issued the error message.
For this message, however, setting the NOCOUNT operation indicates that this condition is to be allowed, and normal processing of the INITIALIZE command will continue.
Issuing MSGCTL M204.2941 NOCOUNT is not recommended, because this results in what might appear to be checking of the filename when in fact it is not checked.
Issuing MSGCTL M204.2940 NOCOUNT does not present any risk with version 7.5 of Model 204, but, as discussed in the System Manager response section of message 2940, this practice should be done with caution.
Return codes: C 0 4 AUDITER
2942:
Extraneous string after field attribute list: %C
Explanation: This message indicates that the format of the INITIALIZE command as entered for a hashed, sorted, or record security file does not conform to the syntax of:
INITIALIZE [SORT fldName (attributes)] [HASH fldName (attributes)] [RECSCTY fldName (attributes)]
In particular, it indicates that some string followed the right parenthesis (')') of the attribute list.
Prior to version 7.5, nothing after the closing parenthesis was checked.
File manager response: Correct the command. There should be no string after the right parenthesis.
System manager response: If the file manager is unable to correct the INITIALZE command, you can have the following command executed at any time before the INITIALIZE command is executed:
MSGCTL M204.2942 NOCOUNT
This action represents a very special case for the NOCOUNT option of MSGCTL. Normally, the NOCOUNT option only changes a message such that it does not increment the count of counting errors, but does not directly affect the operation which issued the error message.
For this message, however, setting the NOCOUNT operation indicates that this condition is to be allowed, and normal processing of the INITIALIZE command will continue.
Issuing MSGCTL M204.2942 NOCOUNT is not recommended, because if you issue this command the string after the right parenthesis will not be analyzed.
Return codes: C 0 4 AUDITER
2943:
Error using filename phrase for file %C: restriction
Explanation: This message indicates that the format of the INITIALIZE command as entered does not conform to the syntax of:
INITIALIZE [KEEPDEF[S]]
Prior to version 7.5, it was possible to place any text on the INITIALIZE command, and if it was anything other than KEEPDEF[S], it was ignored. In version 7.5, the syntax of INITIALIZE command is checked for strict correctness.
In some cases, users have entered the name of the file being initialized AFTER the INITIALIZE command keyword, but this message indicates that the syntax requires some modification for the particular file being initialized.
File manager response: The command should be corrected; the most direct response is to correct the command to conform to the proper syntax, that is remove extraneous strings after the INITIALIZE command keyword.
However, if the system manager has performed a MSGCTL M204.2940 NOCOUNT command, you can modify the command as indicated by the restriction shown in the M204.2943 text.
System manager response: If the file manager is unable to correct the INITIALZE command, you can have the following commands executed at any time before the INITIALIZE command is executed:
MSGCTL M204.2940 NOCOUNT MSGCTL M204.2943 NOCOUNT
This action represents a very special case for the NOCOUNT option of MSGCTL. Normally, the NOCOUNT option only changes a message such that it does not increment the count of counting errors, but does not directly affect the operation which issued the error message.
For this message, however, setting the NOCOUNT operation indicates that this condition is to be allowed, and normal processing of the INITIALIZE command will continue.
Issuing MSGCTL M204.2943 NOCOUNT is not recommended, because this bypasses the checking that is intended by the restriction shown in the M204.2943 text.
Issuing MSGCTL M204.2940 NOCOUNT does not present any risk with version 7.5 of Model 204, but, as discussed in the system manager response for M204.2940, this practice should be done with caution.
Return codes: C 0 4 AUDITER
2944:
Should have end of cmd command but instead found: string
Explanation: This message indicates that the format of the command indicated by cmd as entered does not conform to command syntax.
User response: Correct the command, either by simply removing string and any following strings or else by correcting the command to conform to the proper syntax.
File manager response: If the cmd in the M204.2944 text is INITIALIZE, this message indicates that the format of the INITIALIZE command as entered does not conform to the syntax of:
INITIALIZE [KEEPDEF[S]]
Prior to version 7.5, it was possible to place any text on the INITIALIZE command, and if the text was anything other than KEEPDEF[S], it was ignored. In version 7.5, the syntax of INITIALIZE command is checked for strict correctness.
The command should be corrected as described in the user response above.
System manager response: If the file manager is unable to correct the INITIALZE command, you can have the following command executed at any time before the INITIALIZE command is executed:
MSGCTL M204.2944 NOCOUNT
This action represents a very special case for the NOCOUNT option of MSGCTL. Normally, the NOCOUNT option only changes a message such that it does not increment the count of counting errors, but does not directly affect the operation which issued the error message.
For this message, however, setting the NOCOUNT operation indicates that this condition is to be allowed, and normal processing of the INITIALIZE command will continue.
Issuing MSGCTL M204.2944 NOCOUNT is not recommended, because whatever string was indicated on the INITIALIZE command is not checked.
Return codes: C 0 4 AUDITER
2945:
Error encountered, cmd command not performed
Explanation: This counting error message indicates that the processing of the cmd command was not performed. This message should be preceded by one or more messages. (If the preceding messages were not counting error messages, they might not have been displayed on the user's terminal, depending on the MSGCTL parameter setting.)
User response: Correct any conditions indicated by the preceding messages.
Return codes: C 0 4 AUDITER
2946:
Error encountered, cmd command not performed
Explanation: This informational message indicates that the processing of the cmd command was not performed. This message should be preceded by one or more messages. (If the preceding messages were not counting error messages, they might not have been displayed on the user's terminal, depending on the MSGCTL parameter setting.)
User response: Correct any conditions indicated by the preceding messages.
Return codes: I 0 0 AUDITMS
2947:
Module address address length length protected
Explanation: This informational message is displayed during startup to show the ranges of load module protection. To see which Rocket CSECTs are being referenced, look at the module map in a snap. For more information on the load module protection facility, see the MODPROT parameter description.
Response: No response is required.
Return codes: 1 0 0 AUDITMS