VAX_Rdb/VMS_________________________________________
Mandatory Update for Versions 3.1B and 4.0
August 1991
This is a mandatory update for all customers
currently using VAX Rdb/VMS Version 3.1B and Version
4.0.
This document contains the installation verification
procedure (IVP) for installing updated images and the
VAX Rdb/VMS release notes that describe the problems
fixed in these images, additional known problems not
fixed, and additional restrictions for VAX Rdb/VMS
Version 3.1B and Version 4.0.
The release notes sections in this document contain
descriptions of and other information relating to
this mandatory update only. These release notes
supplement but do not supersede the VAX Rdb/VMS
release notes shipped with VAX Rdb/VMS Version 3.1,
Version 3.1B, and Version 4.0.
If you are installing this mandatory update, read the
instructions contained in this document.
Operating System: VMS
Software Version: Mandatory Update for
VAX Rdb/VMS Version
3.1B and Version 4.0
Digital Equipment Corporation
Maynard, Massachusetts
________________________________________________________________
August 1991
The information in this document is subject to change
without notice and should not be construed as a commitment
by Digital Equipment Corporation. Digital Equipment
Corporation assumes no responsibility for any errors that
may appear in this document.
The software described in this document is furnished under
a license and may be used or copied only in accordance with
the terms of such license.
No responsibility is assumed for the use or reliability
of software on equipment that is not supplied by Digital
Equipment Corporation or its affiliated companies.
Restricted Rights: Use, duplication, or disclosure by the
U.S. Government is subject to restrictions as set forth in
subparagraph (c)(1)(ii) of the Rights in Technical Data
and Computer Software clause at DFARS 252.227-7013.
© Digital Equipment Corporation 1991.
All Rights Reserved.
Printed in U.S.A.
The postpaid Reader's Comment form at the end of this
document requests your critical evaluation to assist in
preparing future documentation.
The following are trademarks of Digital Equipment
Corporation: ACMS, ALL-IN-1, CDD/Plus, DEC, DECdecision,
DECdtm, DECforms, DECintact, DECnet, DECtp, DECtrace,
DECwindows, MicroVAX, PATHWORKS, Rdb/VMS, ULTRIX, UNIBUS,
VAX, VAX Ada, VAX BASIC, VAX C, VAX CDD, VAX COBOL, VAX
DATATRIEVE, VAX DBMS, VAX DOCUMENT, VAX FMS, VAX FORTRAN,
VAX Pascal, VAX RALLY, VAX Rdb/ELN, VAX RMS, VAX SCAN,
VAX SPM, VAXcluster, VAXELN, VAXset, VAXstation,
VAX TEAMDATA, VIDA, VMS, VT, and the DIGITAL logo.
AppleTalk and Macintosh are registered trademarks of Apple
Computer, Inc. MPW is a trademark of Apple Computer, Inc.
Motorola and 68000 are registered trademarks of Motorola,
Inc. MS-DOS is a registered trademark of Microsoft
Corporation. OS/2 and IBM are trademarks of International
Business Machines Corporation.
This document is available on CDROM.
This document was prepared using VAX DOCUMENT, Version 2.0.
_________________________________________________________________
Contents
Preface................................................... xiii
Part I Mandatory Update for VAX Rdb/VMS Version 3.1B
1 Installing the Rdb/VMS Version 3.1B Mandatory Update
1.1 Before Installing the Rdb/VMS Mandatory Update
Package for V3.1B................................ 1-1
1.1.1 Prerequisite Hardware and Software ............ 1-1
1.1.2 Back Up All Existing Rdb/VMS Databases ........ 1-2
1.1.3 Disk Space Required to Install the MUP ........ 1-3
1.1.4 Shut Down the Rdb/VMS Monitor ................. 1-3
1.1.5 Obtain the VMS Privileges Required to Install
the MUP........................................ 1-4
1.1.6 Ensure Sufficient Process Account Quotas to
Install the MUP................................ 1-5
1.1.7 Obtain System Parameter Values Required to
Install the MUP................................ 1-6
1.1.7.1 Checking System Parameter Values............ 1-7
1.1.7.2 Calculating the Values for GBLPAGES and
GBLSECTIONS................................. 1-8
1.1.7.3 Changing System Parameter Values with
AUTOGEN..................................... 1-8
1.1.7.4 Setting Dynamic System Parameters........... 1-9
1.1.8 Back Up Your System Disk ...................... 1-10
1.1.9 Avoid Giving Users Access to HELP ............. 1-10
1.1.10 Prevent Interactive Users from Gaining Access
to the System.................................. 1-10
1.2 Installing the Mandatory Update Package.......... 1-12
1.2.1 Time Required to Install the MUP .............. 1-12
1.2.2 Invoking VMSINSTAL ............................ 1-12
1.2.3 Steps of the Installation Procedure ........... 1-13
iii
1.2.4 Completing the Installation Procedure ......... 1-18
1.2.5 Errors That Cause the Installation to Fail .... 1-19
1.3 After Installing the Mandatory Update Package.... 1-21
1.3.1 Accessing the Online Release Notes ............ 1-21
1.3.2 Tailoring Your System ......................... 1-21
1.3.3 Returning the System to Original Settings ..... 1-23
2 Software Errors Fixed in the Mandatory Update for
Rdb/VMS V3.1B
2.1 General Information.............................. 2-1
2.1.1 A VMS Sort Utility Problem Affected Rdb/VMS ... 2-1
2.1.2 The VMS Sort Utility for VMS V5.1, V5.2, and
V5.3 Caused Problems with Rdb/VMS Databases.... 2-2
2.2 Software Errors Fixed That Apply to All
Interfaces in the Mandatory Update for Version
3.1B............................................. 2-3
2.2.1 Rdb/VMS Returned Errors When Retrying Failed
Multidatabase Transactions..................... 2-3
2.2.2 Active Transactions in Application Programs
Could Not Recover from Network Failures........ 2-4
2.2.3 Data Transfer from the V3.1B Server Caused
Problems....................................... 2-4
2.2.4 A Partitioned Sorted Index Stored the First
Record Incorrectly............................. 2-4
2.2.5 Certain Queries with Intended MODIFY Operations
Within Read/Write Transactions Caused
Unnecessary Writes to the .AIJ File............ 2-5
2.2.6 Partitioned Sorted Indexes Caused Bugchecks ... 2-6
2.2.7 A MODIFY Operation Caused Index Corruption on
Partitioned Hash Indexes....................... 2-6
2.2.8 Partitioned Sorted Indexes Resulted in Various
Problems....................................... 2-7
2.2.9 With Compression Disabled, Altering the Storage
Map STORE Clause and Then Selecting a Row
Resulted in a Bugcheck......................... 2-8
2.2.10 A Bugcheck Sometimes Resulted When a Sorted
Index Rebalanced Itself........................ 2-9
2.2.11 Problem Occurred When Rdb/VMS and the User
Application Both Allocated Event Flag 63....... 2-10
2.2.12 Query Returned Records in Wrong Order with the
SQL ORDER BY <column-name> DESCENDING or the
RDO SORTED BY DESCENDING <field> Clauses....... 2-11
iv
2.2.13 Negate Operator Incorrectly Propagated the NULL
Bit While Processing a Record Stream........... 2-12
2.2.14 Query with Computed-By and OR Index Retrieval
Strategy Returned Incorrect Results............ 2-14
2.3 RDO, RDBPRE, and RDML Problems Fixed in the
Mandatory Update for V3.1B....................... 2-15
2.3.1 RDBPRE Generated Incorrect Code for Request
Handles........................................ 2-15
2.4 RMU Problems Fixed in the Mandatory Update for
V3.1B............................................ 2-16
2.4.1 RMU/VERIFY Returned Spurious Errors Involving
Fragmented Records............................. 2-16
2.4.2 Attempting to Recover a Database from an
.AIJ File Using the RMU/RECOVER Command or
RDO RECOVER Statement Caused an Exception
Condition...................................... 2-17
3 Known Problems, Restrictions, and Other Notes for the
Mandatory Update for Rdb/VMS V3.1B
3.1 Problems, Restrictions, and Notes for All
Interfaces....................................... 3-1
3.1.1 Using Quoted Threshold Values for Binary Data
Types for Partitioning Data or Indexes Results
in Data or Index Corruption.................... 3-1
3.1.2 Problem with SQL LIKE and RDO MATCHING
Clauses........................................ 3-2
3.1.3 RDB$REMOTE Account Has SYSTEM as Owner ........ 3-4
3.1.4 RDMSHRP_DS Image Displays Incorrect Values .... 3-4
3.1.5 An Arithmetic Exception Results When Joining
Integer Columns................................ 3-4
3.1.6 Collating Sequences That Use Two-to-Two
Character Mapping May Bugcheck................. 3-5
3.1.7 Synchronization Problem for an Empty Sorted
Index.......................................... 3-6
3.1.8 Rdb/VMS Does Not Accept the Database File
Specification in a Logical Name................ 3-8
3.1.9 Constraints Cause Looping and
LCKCCH$COMMIT_SUBTREE Bugchecks................ 3-9
3.1.10 Query Optimizer Does Not Use Index-Only
Retrieval When the Dbkey Is Selected........... 3-10
v
3.1.11 Query Optimizer Chooses an Incorrect Strategy
for a Write Operation Within a Selection Loop
and Goes into an Infinite Loop................. 3-11
3.1.12 Singleton Subselect Statement Returns Incorrect
Results........................................ 3-12
3.1.13 SPAM Pages Are Not Updated Correctly .......... 3-13
3.1.14 Rdb/VMS Monitor Fails When the Last User
Finishes on a Particular Database.............. 3-14
3.1.15 Triggers That Affect Subject Table Rows Can
Cause Loops or Inconsistent Results............ 3-14
3.1.16 Query Using Descending Indexes Returns
Incorrect Results.............................. 3-15
3.1.17 Query with a Computed-By Field and OR Logic
Returns Incorrect Results...................... 3-16
3.1.18 NOWAIT Transactions Have Their Buffers
Invalidated at COMMIT.......................... 3-16
3.2 SQL Problems, Restrictions, and Notes............ 3-16
3.2.1 Using the IGNORE CASE Option of the LIKE Clause
Sometimes Results in a Query That Incorrectly
Returns No Rows................................ 3-16
3.3 SQL/Services Problems, Restrictions, and Notes... 3-17
3.3.1 SQL/Services VMS API Shipped with the Rdb/VMS
Run-Time Kit................................... 3-18
3.4 RDO, RDBPRE, and RDML Problems, Restrictions, and
Notes............................................ 3-18
3.5 Rdb/VMS Management Utility (RMU) Problems,
Restrictions, and Notes.......................... 3-18
3.5.1 Do Not Delete After-Image Journal (.AIJ)
Backup Files If the AIJ Backup Fails or Is
Terminated..................................... 3-18
3.5.2 EXPORT Operations Fail with an Access Violation
When the Database Has a Default Collating
Sequence Defined............................... 3-19
3.5.3 Use of Undocumented RMU/REPAIR Command Corrupts
Databases...................................... 3-19
3.6 Notes and Restrictions Related to CDD/Plus....... 3-20
3.6.1 Restrictions Lifted by CDD/Plus Version 4.3 ... 3-20
3.7 Rdb/VMS Documentation Errors and Omissions in
V3.1B............................................ 3-20
3.7.1 Documentation Error in V3.1 VAX Rdb/VMS SQL
Reference Manual, Appendix D.4................. 3-20
vi
4 Optional ECO Patches for the Mandatory Update for VAX
Rdb/VMS V3.1B
4.1 Optional ECO Patches That Can Be Applied to the
Mandatory Update for Rdb/VMS V3.1B............... 4-1
4.1.1 RDMSHRP ECO 1: Constraints Cause Looping and
LCKCCH$COMMIT_SUBTREE Bugchecks................ 4-1
4.1.2 RDMSHRP ECO 14: Query Optimizer Does Not
Use Index-Only Retrieval When the Dbkey Is
Selected....................................... 4-2
4.1.3 RDMSHRP ECO 19: Query Optimizer Chooses an
Incorrect Strategy for a Write Operation Within
a Selection Loop and Goes into an Infinite
Loop........................................... 4-2
4.1.4 RDMMON ECO 1: Rdb/VMS Monitor Fails When the
Last User Finishes on a Particular Database.... 4-2
Part II Mandatory Update for VAX Rdb/VMS Version 4.0
5 Installing the Rdb/VMS Mandatory Update for Version 4.0
5.1 Before Installing the Rdb/VMS Mandatory Update
Package for Rdb/VMS Version 4.0.................. 5-1
5.1.1 Prerequisite Hardware and Software ............ 5-1
5.1.2 Back Up All Existing Rdb/VMS Databases ........ 5-2
5.1.3 Disk Space Required to Install the MUP ........ 5-2
5.1.4 Shut Down the Rdb/VMS Monitor ................. 5-3
5.1.5 Obtain VMS Privileges Required to Install the
MUP............................................ 5-4
5.1.6 Ensure Sufficient Process Account Quotas to
Install the MUP................................ 5-5
5.1.7 Obtain System Parameter Values Required to
Install the MUP................................ 5-6
5.1.7.1 Checking System Parameter Values............ 5-7
5.1.7.2 Calculating the Values for GBLPAGES and
GBLSECTIONS................................. 5-8
5.1.7.3 Changing System Parameter Values with
AUTOGEN..................................... 5-8
5.1.7.4 Setting Dynamic System Parameters........... 5-9
5.1.8 Back Up Your System Disk ...................... 5-10
5.1.9 Avoid Giving Users Access to HELP ............. 5-10
5.1.10 Prevent Interactive Users from Gaining Access
to the System.................................. 5-10
vii
5.2 Installing the Mandatory Update Package.......... 5-12
5.2.1 Time Required to Install the MUP .............. 5-12
5.2.2 Invoking VMSINSTAL ............................ 5-12
5.2.3 Steps of the Installation Procedure ........... 5-13
5.2.4 Completing the Installation Procedure ......... 5-18
5.2.5 Errors That Cause the Installation to Fail .... 5-18
5.3 After Installing the MUP......................... 5-19
5.3.1 Accessing the Online Release Notes ............ 5-20
5.3.2 Tailoring Your System ......................... 5-20
5.3.3 Returning the System to Original Settings ..... 5-22
6 Software Errors Fixed in the Mandatory Update for
Rdb/VMS V4.0
6.1 General Information.............................. 6-1
6.1.1 The VMS Sort Utility for VMS V5.1, V5.2, and
V5.3 Caused Problems with Rdb/VMS Databases.... 6-1
6.2 Software Errors Fixed That Apply to All
Interfaces in the Mandatory Update for Version
4.0.............................................. 6-2
6.2.1 Wrong RDBINTSHR.EXE Image Was Installed for
Interactive License Customers.................. 6-2
6.2.2 Active Transactions in Application Programs
Could Not Recover from Network Failures........ 6-2
6.2.3 Using Event Flags Caused Conflicts with Other
Software Products.............................. 6-2
6.2.4 An Access Violation Resulted When DECdtm
Services and DECnet Services Were Not
Running........................................ 6-3
6.2.5 If a Commit Failed During a One-Phase
Commit Protocol When an Explicit Distributed
Transaction Was Run, It Caused a Premature
$FINISH_RMOP to DECdtm......................... 6-4
6.2.6 The Rdb/VMS DISTRIBTRAN Privilege Was Not
Available for Remote Database Access........... 6-4
6.2.7 A Partitioned Sorted Index Stored the First
Record Incorrectly............................. 6-4
6.2.8 A MODIFY Operation Caused Index Corruption on
Partitioned Hash Indexes....................... 6-5
6.2.9 Partitioned Sorted Indexes Resulted in Various
Problems....................................... 6-6
6.2.10 You Could Not Define Views Based on System
Relations...................................... 6-7
viii
6.2.11 An Incorrect Value Was Stored or a Bugcheck
Resulted When Using BEFORE UPDATE or BEFORE
MODIFY Triggers................................ 6-7
6.2.12 Queries with Computed Expressions and Indexes
Returned the Wrong Results..................... 6-8
6.2.13 Queries with Computed Expressions Returned the
Wrong Results.................................. 6-9
6.2.14 Some Update-Intensive Applications Experienced
a Performance Degradation in Rdb/VMS V4.0
Compared to V3.1B.............................. 6-9
6.2.15 Poor Performance Was Experienced While
Retrieving Views by Dbkey...................... 6-10
6.2.16 Wrong Results Were Returned from Queries That
Used Collating Sequences and the STARTING WITH
"" Relational Operator......................... 6-12
6.2.17 Recovery-Unit Journal (.RUJ) Files Could Not Be
Created Using Angle Brackets (< >)............. 6-13
6.2.18 A Bugcheck Sometimes Resulted When a Sorted
Index Rebalanced Itself........................ 6-13
6.2.19 NOWAIT Transactions Started During a Recovery
Process Caused an RDMS-F-AREABUSY Fatal
Error.......................................... 6-14
6.2.20 The Query Optimizer Caused Various Bugchecks
When Queries Were Run.......................... 6-15
6.2.21 Shared Write Queries Consumed More Memory Than
Expected....................................... 6-15
6.2.22 Locking Protocol Problem Caused Bugchecks ..... 6-16
6.2.23 Deleting and Then Creating a Logical Area and
Accessing the Schema Caused a Page Checksum
Bugcheck....................................... 6-16
6.2.24 Rdb/VMS Behavior Had Changed so That Buffers
Were Emptied on Rollback....................... 6-16
6.2.25 Lock-Related Looping Problem .................. 6-17
6.2.26 Problem with SPAM Thresholds in a Recover
Operation...................................... 6-17
6.2.27 Query Returned Records in Wrong Order with the
SQL ORDER BY <column-name> DESCENDING or the
RDO SORTED BY DESCENDING <field> Clauses....... 6-17
6.2.28 The Predicate CONTAIN Uppercased the Second
Byte of Some Two-Octet Characters Incorrectly
............................................... 6-18
6.2.29 Negate Operator Incorrectly Propagated the NULL
Bit While Processing a Record Stream........... 6-18
ix
6.2.30 An UPDATE Operation Stored Incorrect Results .. 6-20
6.2.31 An UPDATE Operation Caused a Bugcheck ......... 6-21
6.2.32 Query Using Descending Indexes Returned
Incorrect Results.............................. 6-22
6.2.33 Query with SQL LIKE Returned Incorrect
Results........................................ 6-22
6.2.34 Query with Compressed Indexes Returned
Incorrect Results.............................. 6-24
6.2.35 Query Returned Incorrect Results .............. 6-27
6.2.36 Poor Performance Was Observed with Queries
Using Dynamic OR Optimization Within the Leaf
Retrieval...................................... 6-27
6.2.37 SPAM Pages Were Not Updated Correctly ......... 6-28
6.2.38 Global Section Was Corrupted When a User Had
Multiple Attaches.............................. 6-28
6.2.39 Under Certain Circumstances a Committed Update
Was Not Completely Written to the .AIJ File.... 6-28
6.3 IMPORT/EXPORT Problems Fixed in the Mandatory
Update for Version 4.0........................... 6-29
6.3.1 Importing a Database with Tables Containing
Lists (Segmented Strings) Failed............... 6-29
6.4 SQL Problems Fixed in the Mandatory Update for
V4.0............................................. 6-29
6.4.1 SQL$STARTUP.COM Startup File Contained an Error
in the SQL/Services Startup Logical Name....... 6-29
6.4.2 Opening a Cursor That Was Already Opened Caused
the Cursor to Lose Its State................... 6-30
6.4.3 Executing the ROLLBACK Statement with OPEN
LIST Cursors Left List Cursors in an Unusable
State.......................................... 6-31
6.4.4 Executing the COMMIT Statement with OPEN LIST
Cursors Did Not Commit the Newly Created
Lists.......................................... 6-37
6.4.5 The OPEN Statement of an INSERT TABLE CURSOR
Did Not Properly Return Error Status........... 6-40
6.4.6 Records Included from the Data Dictionary in
the C Preprocessor Did Not Null Terminate
Character Strings.............................. 6-44
6.4.7 Triggers Created with Long Source Text Strings
Were Improperly Displayed...................... 6-45
6.4.8 Triggers Created from Programs Had Their Source
Text Truncated by a Word....................... 6-46
x
6.5 SQL/Services Problems Fixed in the Mandatory
Update for V4.0.................................. 6-47
6.5.1 Reinstalling SQL/Services APIs After
Installation of Mandatory Update Kit for
Rdb/VMS Version 4.0............................ 6-47
6.5.2 SQL/Services Sample Application ULTRIX API
Compiled with a Syntax Error................... 6-47
6.5.3 SQL/Services MS-DOS IVP Failed with a -2003 and
9 Error Status Codes, Indicating That Numbers
Were Not Being Allowed Within Server Node
Names.......................................... 6-48
6.5.4 SQL/Services Length Packet Split Problem ...... 6-48
6.5.5 SQL/Services ULTRIX API Was Not Freeing Network
Connections.................................... 6-48
6.5.6 SQL/Services Communication Server Did Not
Report Error Status............................ 6-48
6.5.7 SQL/Services Shutdown Procedure Hung, Causing
the Subsequent Startup Procedure Not to Work... 6-49
6.5.8 SQL/Services Startup File Changes ............. 6-49
6.5.9 SQL/Services Macintosh API Code Fixes ......... 6-50
6.5.9.1 SQL/Services SQLSRV$Volume Installation
Volume Could Not Be Accessed on the
Macintosh................................... 6-50
6.5.9.2 PATHWORKS DECtask Tool Name Changed......... 6-50
6.5.9.3 SQL/Services Macintosh API Fix for
Macintoshes Based on the Motorola 68000
Chip........................................ 6-51
6.6 RDO, Callable RDO, RDBPRE, and RDML Problems
Fixed in the Mandatory Update for V4.0........... 6-51
6.6.1 RDBPRE Generated Incorrect Code for Request
Handles........................................ 6-51
6.6.2 A CDD/Plus Informational Message Caused RDML to
Abort Compilation.............................. 6-53
6.6.3 An RDML-E-READ_ONLY Error Was Returned When
Attempting to Update COMPUTED BY Fields........ 6-53
6.6.4 Problem with Callable RDO and Varying String
Descriptors.................................... 6-53
6.7 RMU Problems Fixed in the Mandatory Update for
V4.0............................................. 6-54
6.7.1 RMU/VERIFY Returned Spurious Errors Involving
Fragmented Records............................. 6-54
6.7.2 RMU/CONVERT Failed with a Default Collating
Sequence Defined............................... 6-55
xi
6.7.3 The /INTERVAL Qualifier of the
RMU/BACKUP/AFTER_JOURNAL Command Miscalculated
a Specified Interval Value..................... 6-55
6.7.4 Problem with RMU/SHOW USERS and RMU/SHOW SYSTEM
Commands and VMS WORLD Privileges.............. 6-55
6.7.5 RMU/REPAIR Command Caused Database
Corruption-Problem I........................... 6-56
6.7.6 RMU/REPAIR Command Caused Database
Corruption-Problem II.......................... 6-56
6.7.7 RMU/DUMP and RMU/CLOSE Commands Required VMS
SYSPRV Privilege............................... 6-56
7 Known Problems, Restrictions, and Other Notes for the
Mandatory Update for Rdb/VMS V4.0
7.1 General Problems, Restrictions, and Notes........ 7-1
7.1.1 VMS Lock Remastering Changed in VMS V5.4 ...... 7-1
7.2 Problems, Restrictions, and Notes for All
Interfaces....................................... 7-1
7.2.1 Using Quoted Threshold Values for Binary Data
Types for Partitioning Data or Indexes Results
in Data or Index Corruption.................... 7-2
7.2.2 Problem with SQL LIKE and RDO MATCHING
Clauses........................................ 7-3
7.2.3 RDB$REMOTE Account Has SYSTEM as Owner ........ 7-4
7.2.4 An Arithmetic Exception Results When Joining
Integer Columns................................ 7-4
7.2.5 Collating Sequences That Use Two-to-Two
Character Mapping Can Bugcheck................. 7-5
7.2.6 Query with Keys Scans the Index Instead of
Using Direct Tree Lookup....................... 7-6
7.2.7 Synchronization Problem for an Empty Sorted
Index.......................................... 7-7
7.2.8 Rdb/VMS Does Not Accept the Database File
Specification in a Logical Name................ 7-8
7.2.9 Query Optimizer Does Not Choose Index-Only
Retrieval When the Dbkey Is Selected........... 7-9
7.2.10 Rdb/VMS Hangs on a SELECT Statement When a
Column Data Type Is Changed from INTEGER to
CHARACTER to DATE.............................. 7-10
7.2.11 Rdb/VMS Monitor Fails When the Last User
Finishes on a Particular Database.............. 7-11
xii
7.2.12 Multisegmented Index Is Not Selected When a
Not-Equal Predicate Is Specified............... 7-12
7.2.13 Triggers That Affect Subject Table Rows Can
Cause Loops or Inconsistent Results............ 7-13
7.2.14 Singleton Subselect Statement Returns Incorrect
Results........................................ 7-13
7.2.15 Query with a FOR Loop with a MODIFY Statement
Followed by a PRINT Statement Can Return
Incorrect Results.............................. 7-15
7.2.16 Query with a Computed-By Field and OR Logic
Returns Incorrect Results...................... 7-15
7.2.17 Defining a View Causes a Bugcheck When a Sorted
Index Was Previously Defined................... 7-16
7.2.18 Problem When Database Is Defined as Remote .... 7-17
7.2.19 An Incompatible Change for RDO Applications:
New Update Rules Will Be Enforced by Default in
V4.1........................................... 7-17
7.2.20 Relation Name Must Match Dictionary Record
Name........................................... 7-19
7.2.21 NOWAIT Transactions Have Their Buffers
Invalidated at COMMIT.......................... 7-20
7.3 SQL Problems, Restrictions, and Notes............ 7-20
7.3.1 SQL Deprecated Features and Incompatible
Changes for VAX Rdb/VMS Version 4.1............ 7-20
7.3.2 SQL to Support Error Code Values in Rdb/VMS
Version 4.1.................................... 7-23
7.3.3 Using the IGNORE CASE Option of the LIKE Clause
Sometimes Results in a Query That Incorrectly
Returns No Rows................................ 7-23
7.3.4 An SQL SELECT Statement Results in an Invalid
BLR Error...................................... 7-24
7.4 SQL/Services Problems, Restrictions, and Notes... 7-24
7.4.1 SQL/Services VMS API Shipped with the Rdb/VMS
Run-Time Kit................................... 7-25
7.4.2 VMS API Installation Without Rdb/VMS .......... 7-25
7.4.3 Trailing Characters on SQL/Services Sample
Program Error Messages......................... 7-25
7.5 RDO, RDBPRE, and RDML Problems, Restrictions, and
Notes............................................ 7-25
7.5.1 RDO IMPORT Does Not Save All SQL Defined
Attributes..................................... 7-26
xiii
7.5.2 RDO CONVERT on V3.0 Databases Causes Database
Corruption When the Database Is Converted to
V4.0........................................... 7-26
7.6 Rdb/VMS Management Utility (RMU) Problems,
Restrictions, and Notes.......................... 7-26
7.6.1 Do Not Delete After-Image Journal (.AIJ)
Backup Files If the AIJ Backup Fails or Is
Terminated..................................... 7-27
7.6.2 Concealed Logicals Are Supported but No Longer
Recommended for Use After V4.0................. 7-28
7.6.3 Warnings from an RMU/VERIFY Operation ......... 7-28
7.6.4 RMU/VERIFY/INDEX or RMU/VERIFY/ALL Command
Causes a Bugcheck If You Have Hashed Indexes
Defined........................................ 7-29
7.7 Notes and Restrictions Related to CDD/Plus....... 7-29
7.7.1 Restrictions Lifted by CDD/Plus Version 4.3 ... 7-29
7.8 DECtrace Problems, Restrictions, and Notes....... 7-29
7.8.1 Rdb/VMS Version Number Used for DECtrace Will
Remain at V4.0................................. 7-29
7.9 Rdb/VMS Documentation Errors and Omissions in
V4.0............................................. 7-29
7.9.1 Buffer Management Changes for V4.0 ............ 7-30
7.9.2 Incorrect Reference in V4.0 VAX Rdb/VMS SQL
Reference Manual, Chapter 3.................... 7-32
7.9.3 Printing Error in V4.0 VAX Rdb/VMS SQL
Reference Manual, Chapter 4.................... 7-32
7.9.4 Documentation Error in V4.0 VAX Rdb/VMS SQL
Reference Manual, Appendix D.4................. 7-32
7.9.5 SQL/Services Error Documentation .............. 7-33
7.10 SQL/Services Troubleshooting Suggestions......... 7-34
7.10.1 Common SQL/Services Network Errors ............ 7-34
7.10.2 Common SQL/Services Fatal Execution Server
Errors......................................... 7-35
7.10.3 Common SQL/Services API Installation
Failures....................................... 7-36
7.10.4 SQL/Services Compatibility Issues ............. 7-37
7.10.4.1 SQL/Services V4.0 Server Uses Proxy-Like and
Default Access to Authorize V3.0 or V3.1
Client Applications......................... 7-37
7.10.4.2 SQL/Services V4.0 Server Error -2031
Returned to V3.1 Client APIs................ 7-38
7.10.4.3 Queue Manager Must Be Started for the
SQL/Services IVP to Work.................... 7-38
xiv
8 Optional ECO Patches for the Mandatory Update for VAX
Rdb/VMS V4.0
8.1 Optional ECO Patches That Can Be Applied to the
Mandatory Update for Rdb/VMS V4.0................ 8-1
8.1.1 RDMSHRP ECO 30: Poor OR Optimization
Performance on Read/Write Transactions......... 8-2
8.1.2 RDMMON ECO 01: Rdb/VMS Monitor Fails When the
Last User Finishes on a Particular Database.... 8-2
8.1.3 RDMSHRP ECO 31: Multisegmented Index Is
Not Selected When a Not-Equal Predicate Is
Specified...................................... 8-3
8.1.4 RDMSHRP ECO 32: Singleton Subselect Statement
Returns Incorrect Results...................... 8-3
8.1.5 RDMSHRP ECO 33: Query with a FOR Loop with a
MODIFY Statement Followed by a PRINT Statement
Can Return Incorrect Results................... 8-4
A Sample V3.1C Installation
B Sample V4.0A Installation
Examples
6-1 Cursor Losing Its State ....................... 6-30
6-2 Executing ROLLBACK with LIST CURSORS in a Host
C Program...................................... 6-31
6-3 Executing ROLLBACK with LIST CURSORS in SQL
Module Language................................ 6-36
6-4 Executing COMMIT with OPEN LIST Cursors ....... 6-38
6-5 OPEN Statement Not Returning Error
Information.................................... 6-41
6-6 OPEN Statement Not Returning Error Information
in SQL Module Language......................... 6-43
6-7 Records from the Data Dictionary Not Terminated
with the NULL Character........................ 6-44
6-8 Triggers Properly Displayed ................... 6-45
6-9 Trigger Text Truncated ........................ 6-47
xv
Tables
1-1 Disk Space Requirements ....................... 1-3
1-2 Process Account Quotas for the Installing
Account........................................ 1-5
1-3 Required Minimum System Parameter Values ...... 1-6
5-1 Disk Space Requirements ....................... 5-3
5-2 Process Account Quotas for the Installing
Account........................................ 5-5
5-3 Required Minimum System Parameter Values ...... 5-6
7-1 SQL/Services Network Errors ................... 7-33
xvi
_________________________________________________________________
Preface
VAX Rdb/VMS software, Version 3.1 and Version 4.0, often
referred to as Rdb/VMS in this manual, is a general-purpose
database management system based on the relational data
model.
This manual describes new and changed features, problems
fixed in this release, current problems, additional
restrictions, optional ECO patches, and other notes.
Intended Audience
This mandatory update includes an Installation Verification
Procedure (IVP) and set of release notes intended for all
users of Rdb/VMS Version 3.1B and 4.0, and should be read
to supplement information contained in the Rdb/VMS Version
3.1 and 4.0 documentation sets.
To get the most out of this manual, you should be familiar
with Rdb/VMS, data processing procedures, and basic
database management concepts and terminology.
A Note on the Terminology
When the SQL and RDO interfaces use different terms to
describe the same entity or concept, this manual uses
the SQL term, unless the discussion is specifically about
RDO or RDML. (This is also true of most other manuals in
the Rdb/VMS documentation set.) For example, this manual
normally uses table instead of relation, column instead of
field (of a relation), and row instead of record.
The VAX Rdb/VMS Introduction and Master Index contains a
more detailed list of SQL terms and their RDO equivalents.
xiii
Operating System Information
The version of VMS running on your system must be at least
Version 5.2 for Rdb/VMS V3.1B and Version 5.3 for Rdb/VMS
V4.0. Other information about the versions of the operating
system and related software that are compatible with these
versions of Rdb/VMS is included in the Rdb/VMS media kits
and the VAX Rdb/VMS Installation Guide for each version.
For information on the compatibility of other software
products with these versions of Rdb/VMS, refer to the
System Support Addendum (SSA) that comes with the Software
Product Description (SPD) for each version. You can use the
SPD/SSA to verify which versions of your operating system
are compatible with these versions of Rdb/VMS.
Structure
This manual is divided into two parts. Part I contains
Chapter 1 through Chapter 4 and describes information
pertaining to Rdb/VMS Version 3.1B. Part II contains
Chapter 5 through Chapter 8 and Appendix A and Appendix B,
and describes information pertaining to Rdb/VMS Version
4.0.
Part I Mandatory Update for VAX Rdb/VMS Version
3.1B
Chapter 1 Describes preparations for installation
and the Installation Verification
Procedure for installing the mandatory
update for Rdb/VMS Version 3.1B.
Chapter 2 Describes known software errors that are
fixed in the mandatory update for VAX
Rdb/VMS Version 3.1B.
Chapter 3 Describes current problems, additional
restrictions, and workarounds known to
exist for VAX Rdb/VMS Version 3.1B; may
also include other information.
Chapter 4 Describes the optional ECO patches that
can be applied to the mandatory update for
VAX Rdb/VMS Version 3.1B.
xiv
Part II Mandatory Update for VAX Rdb/VMS Version
4.0
Chapter 5 Describes preparations for installation
and the Installation Verification
Procedure for installing the mandatory
update for Rdb/VMS Version 4.0.
Chapter 6 Describes known software errors that are
fixed in the mandatory update for VAX
Rdb/VMS Version 4.0.
Chapter 7 Describes current problems, additional
restrictions, and workarounds known to
exist for VAX Rdb/VMS Version 4.0; may
also include other information.
Chapter 8 Describes the optional ECO patches that
can be applied to the mandatory update for
VAX Rdb/VMS Version 4.0.
Appendix A Illustrates a sample installation of the
mandatory update package on VAX Rdb/VMS
Version 3.1B.
Appendix B Illustrates a sample installation of the
mandatory update package on VAX Rdb/VMS
Version 4.0.
Related Manuals
For more information on VAX Rdb/VMS, see the following
manuals in the Rdb/VMS documentation set. Note that
all books cited are found in both the V3.1 and V4.0
documentation sets unless stated otherwise.
o VAX Rdb/VMS Introduction and Master Index
Introduces Rdb/VMS and explains major terms and
concepts. Includes a glossary, a directory of Rdb/VMS
documentation, and a master index that combines entries
from all the Rdb/VMS manuals.
o VAX Rdb/VMS Guide to Distributed Transactions
A V4.0 book that describes the two-phase commit protocol
and distributed transactions, explains how to start and
complete distributed transactions using SQL, RDBPRE, and
xv
RDML, and how to recover from unresolved transactions
using RMU commands.
o VAX Rdb/VMS Guide to Database Design and Definition
Explains how to design a logical database and how to
translate that design into a physical database using
Rdb/VMS data definition statements.
xvi
o VAX Rdb/VMS Guide to Database Maintenance and
Performance
Provides guidelines for maintaining good database
performance and explains how to use the database
maintenance utilities to perform backup and recovery
operations, restore journals, and analyze the database.
o VAX Rdb/VMS Guide to Database Tuning
A V4.0 book that introduces the concept of tuning, and
explores how tuning the system, the database, and the
application affects database performance. Describes
steps to follow in identifying, analyzing, isolating,
and solving a performance problem, and in monitoring
the resulting solution. Includes a set of decision
trees that provide an organized approach to solving
some common database tuning problems.
o VAX Rdb/VMS Guide to Using RDO, RDBPRE, and RDML
Describes how to use the features of Rdb/VMS to
retrieve, store, change, and erase data. Shows how to
write programs that use Rdb/VMS as a data access method;
contains information on writing programs in high-level
languages that are supported by Rdb/VMS preprocessors,
including Relational Data Manipulation Language (RDML);
and describes Callable RDO, an interactive utility for
languages without preprocessors.
o VAX Rdb/VMS Guide to Using SQL
Introduces the Rdb/VMS SQL (structured query language)
interface, and shows how to retrieve, store, and update
data interactively and through application programs. Can
be used as a tutorial for learning the major features of
SQL.
o VAX Rdb/VMS Guide to Using SQL/Services
Describes how to develop application programs that
use SQL/Services, a client/server software component
of Rdb/VMS that allows programs from various remote
computers running the Macintosh, MS-DOS, OS/2, ULTRIX,
ULTRIX for RISC, or VMS operating systems to access
Rdb/VMS or VIDA databases on a VMS server system.
o VAX Rdb/VMS SQL Reference Manual
xvii
Provides reference material and a complete description
of the statements, the interactive, dynamic, and
module language interfaces, and the syntax for SQL,
the structured query language interface for Rdb/VMS.
o VAX Rdb/VMS SQL Quick Reference Guide
Summarizes the information in the VAX Rdb/VMS SQL
Reference Manual.
o VAX Rdb/VMS RDO and RMU Reference Manual
Provides reference material and a complete description
of the statements and syntax of the Rdb/VMS Relational
Database Operator (RDO) interface and the commands of
the Rdb/VMS Management Utility (RMU).
o RDML Reference Manual
Describes the syntax and use of the Relational Data
Manipulation Language (RDML), which can be embedded in
VAX C or VAX Pascal programs to access Rdb/VMS or Rdb
/ELN databases.
o VAX Rdb/VMS Installation Guide
Describes how to install Rdb/VMS.
xviii
o VAX Rdb/VMS Release Notes
Describes new features, problems and problems fixed,
restrictions, and other information related to the
current release of Rdb/VMS. Contains information about
SQL and other Rdb/VMS interfaces and utilities.
Conventions
In examples, an implied carriage return occurs at the end
of each line, unless otherwise noted. You must press the
Return key at the end of a line of input.
Often in examples the prompts are not shown. Generally,
they are shown where it is important to depict an
interactive sequence exactly; otherwise, they are omitted
in order to focus full attention on the statements or
commands themselves.
This section explains the conventions used in this manual:
<Ctrl/x> This symbol in examples tells you to press
the Ctrl (control) key and hold it down while
pressing the specified letter key.
<Return> This symbol in examples indicates the Return key.
<Tab> This symbol in examples indicates the Tab key.
Vertical ellipsis points in an example mean that
. information not directly related to the example
. has been omitted.
.
. . . Horizontal ellipsis points in statements or
commands mean that parts of the statement or
command not directly related to the example have
been omitted.
< > Angle brackets enclose user-supplied names.
[ ] Brackets enclose optional clauses from which you
can choose one or none.
$ The dollar sign represents the DIGITAL Command
Language prompt. This symbol indicates that the
DCL interpreter is ready for input.
xix
References to Products
The Rdb/VMS documentation to which this document belongs
often refers to products by their abbreviated names:
o DECdecision software is referred to as DECdecision.
o DEC RdbExpert for VMS software is referred to as
RdbExpert.
o DECtrace for VMS software is referred to as DECtrace.
o VAX ACMS software is referred to as ACMS.
o VAX Ada software is referred to as Ada.
o VAX BASIC software is referred to as BASIC.
o VAX C software is referred to as C.
o VAX CDD/Plus software is referred to as CDD/Plus or the
data dictionary.
o VAX COBOL software is referred to as COBOL.
o VAX Data Distributor software is referred to as Data
Distributor.
o VAX DATATRIEVE software is referred to as DATATRIEVE.
o VAX DBMS software is referred to as VAX DBMS.
o VAX FORTRAN software is referred to as FORTRAN.
o VAXELN Pascal and VAX Pascal are both referred to
as Pascal except when the use of a Relational Data
Manipulation Language (RDML) statement is not the same
in the VAXELN and VMS environments. In the latter case,
either VAXELN Pascal or VAX Pascal is specified.
o VAX PL/I software is referred to as PL/I.
o VAX RALLY software is referred to as RALLY.
o VAX Rdb/ELN software is referred to as Rdb/ELN.
o VAX Rdb/VMS software is referred to as Rdb/VMS. VAX
Rdb/VMS software Versions 3.1, 3.1A, and 3.1B, are often
referred to as V3.1, V3.1A, and V3.1B respectively. VAX
Rdb/VMS software Version 4.0 is often referred to as
V4.0.
xx
o VAX SQL software is referred to as VAX SQL whenever it
is correct to refer to Version 2.0 or earlier of SQL.
The use of SQL by itself indicates the SQL interface now
included as part of VAX Rdb/VMS Version 3.1 and Version
4.0.
o VAX TEAMDATA software is referred to as TEAMDATA.
o VAX TDMS software is referred to as TDMS.
o VIDA software is referred to as VIDA.
xxi
Part I
_________________________________________________________________
Mandatory Update for VAX Rdb/VMS Version 3.1B
This part contains Chapter 1 through Chapter 4 and
describes information pertaining to the mandatory update
of VAX Rdb/VMS Version 3.1B.
1
_________________________________________________________________
Installing the Rdb/VMS Version 3.1B Mandatory Update
This chapter describes information necessary for installing
the mandatory update for Rdb/VMS Version 3.1B.
1.1 Before Installing the Rdb/VMS Mandatory Update Package for
V3.1B
Before you install the mandatory update package (MUP),
you must install Rdb/VMS V3.1B; see the VAX Rdb/VMS
Installation Guide for instructions on how to install
Rdb/VMS. The following sections describe what steps you
need to take to install the MUP.
The installation of the MUP checks to see whether you have
Rdb/VMS V3.1B or Rdb/VMS V4.0 installed on your system.
It then installs either V3.1C or V4.0A. The name of the
mandatory update kit is RDBVMS_MUPA040. This name appears
in installation messages whether you are installing the MUP
for V3.1B or V4.0.
1.1.1 Prerequisite Hardware and Software
This section discusses the hardware and software you
must have installed on your system before you install the
mandatory update package of Rdb/VMS.
You can install the MUP only when your system meets or
exceeds the minimum hardware requirements as shown in the
SPD. Table 1-1 lists the approximate system disk storage
required for the installation of the MUP. Your system may
require additional mass storage for backup and restore
operations.
The VMS operating system Version 5.3 or higher must be
installed on your VAX system if you are installing V3.1C.
Installing the Rdb/VMS Version 3.1B Mandatory Update 1-1
Rdb/VMS V3.1B or Rdb/VMS 4.0 must be installed before you
install the MUP. If one of these versions is not present,
the installation aborts. The installation uses the RDO.EXE
image to check the existing Rdb/VMS version number. If you
have deleted your RDO.EXE image, you must restore it from
the saveset using the VMS BACKUP command. For example, to
restore RDO.EXE from the full development kit, enter the
following command:
$ BACKUP <device>:RDBVMSDEV031.F/SAVE/SELECT=RDO.EXE -
_$ SYS$SYSROOT:[SYSEXE]RDO.EXE
To restore RDO.EXE from the interactive kit, enter the
following command:
$ BACKUP <device>:RDBVMSINT031.E /SAVE/SELECT=INTRDO.EXE *.*
To restore RDO.EXE from the run-time kit, enter the
following command:
$ BACKUP <device>:RDBVMSRTO031.B/SAVE/SELECT=RTORDO.EXE *.*
1.1.2 Back Up All Existing Rdb/VMS Databases
As a precaution, Digital recommends that you back up
any Rdb/VMS databases, including DECtrace and CDD/Plus
databases, with the RMU/BACKUP command before installing
the MUP.
Before installing a new version of Rdb/VMS, Digital
recommends that you perform a full RMU/BACKUP of the
DECtrace administration and history databases, including
DECtrace databases produced with the DECtrace FORMAT
command. To back up the DECtrace administration database,
use the following command:
$ RMU/BACKUP ERC$ADMIN_DB EPC$ADMIN_DB.RBF
To backup the DECtrace history database, use the following
command:
$ RMU/BACKUP EPC$HISTORY_DB EPC$HISTORY_DB.RBF
1-2 Installing the Rdb/VMS Version 3.1B Mandatory Update
1.1.3 Disk Space Required to Install the MUP
Installing the MUP requires a certain amount of available
disk storage space during the installation. Once the MUP
is installed, it takes the same amount of space as your
previous version of Rdb/VMS. Table 1-1 summarizes the
storage requirements for Rdb/VMS.
Table_1-1_Disk_Space_Requirements__________________________
Rdb/VMS_Kit______Blocks_During_Installation________________
Full 13,000
development
Interactive 13,000
Run-time_________13,000____________________________________
To determine the number of available disk blocks on the
current system disk, enter the following command at the DCL
prompt:
$ SHOW DEVICE SYS$SYSDEVICE
1.1.4 Shut Down the Rdb/VMS Monitor
The installation procedure terminates if the Rdb/VMS
monitor is running. Before starting the installation,
ensure that there are no active Rdb/VMS users by shutting
down the Rdb/VMS monitor.
________________________ Note ________________________
If DECtrace is installed on your system, you must
turn DECtrace off before you attempt to shut down the
Rdb/VMS monitor. Turn DECtrace off using the following
command:
$ COLLECT STOP SYSTEM/ABORT
Alternatively, you could stop both DECtrace and
the Rdb/VMS monitor using the RMU/MONITOR STOP
/ABORT=DELPRC command.
______________________________________________________
Installing the Rdb/VMS Version 3.1B Mandatory Update 1-3
Run the RMONSTOP.COM procedure from SYS$STARTUP to shut
down the monitor on all nodes in a VAXcluster system. For
example:
$ RUN SYS$SYSTEM:SYSMAN
SYSMAN> SET ENVIRONMENT/CLUSTER
SYSMAN> DO @SYS$STARTUP:RMONSTOP
SYSMAN> EXIT
If you want to stop the Rdb/VMS monitor on only one node,
enter the following command on that node:
$ @SYS$STARTUP:RMONSTOP
1.1.5 Obtain the VMS Privileges Required to Install the MUP
VMSINSTAL is located in SYS$UPDATE, which is a restricted
directory. To install the MUP, you must use an account
that has SETPRV privilege. As one of its first actions,
the VMSINSTAL command procedure grants all privileges
except BYPASS to the process that invokes it. The VMSINSTAL
command succeeds only if the account has SETPRV privilege.
To check the default privileges of the installing account,
log in and enter this DCL command:
$ SHOW PROCESS/PRIVILEGES
If the account lacks the SETPRV privilege, you cannot
install the MUP. You have two options:
o Ask your system manager to use AUTHORIZE to modify the
default privileges of the account to include the SETPRV
privilege.
o Run AUTHORIZE and make the changes yourself, if your
account has the SYSPRV privilege:
$ SET DEFAULT SYS$SYSTEM
$ RUN AUTHORIZE
UAF> MODIFY account-name/PRIVILEGES=(SETPRV)
UAF> EXIT
To activate the change in privileges, you must log out
and log in again.
(Note that the VMSINSTAL procedure turns off the BYPASS
privilege at the start of the installation.)
1-4 Installing the Rdb/VMS Version 3.1B Mandatory Update
1.1.6 Ensure Sufficient Process Account Quotas to Install the MUP
The account you use to install the MUP must have sufficient
quotas to enable you to perform the installation. Table 1-2
summarizes the minimum process quotas required to install
the MUP.
Table_1-2_Process_Account_Quotas_for_the_Installing_Account
Account_Quota____Value_____________________________________
ASTLM 24
BIOLM 18
BYTLM 20,480
DIOLM 18
ENQLM 2000
FILLM 50
PGFLQUO__________20,000____________________________________
User account quotas are stored in the file SYSUAF.DAT.
You use AUTHORIZE to verify and change user account
quotas. First set your directory to SYS$SYSTEM and then
run AUTHORIZE:
$ SET DEFAULT SYS$SYSTEM
$ RUN AUTHORIZE
UAF>
At the AUTHORIZE prompt (UAF>), use the SHOW command with
an account name to check a particular account. For example,
to check the SYSTEM account enter:
UAF> SHOW SYSTEM
To change a quota, use the MODIFY command at the UAF>iB prompt. The MODIFY command has the following syntax: 1 MODIFY account-name /quota-name=NNNm C The following example changes the FILLM quota for theU; SYSTEM account and then exits from AUTHORIZE: * UAF> MODIFY SYSTEM /FILLM=50 UAF> EXIT I Installing the Rdb/VMS Version 3.1B Mandatory Update 1-5
B After you exit from the utility, the VMS system displaysB messages that indicate whether or not changes were made.C Once the changes have been made, you must log out and logt5 in again for the new quotas to take effect.c C For more information on modifying account quotas, see theS@ description of AUTHORIZE in the VMS documentation set. D 1.1.7 Obtain System Parameter Values Required to Install the MUP >