CONTENTS Title Page Copyright Page Preface 1 New and Changed Features 1.1 Two-Phase Commit Protocol 1.1.1 Using SQL with Distributed Transactions 1.1.2 Using RDBPRE with Distributed Transactions 1.1.3 Using RDML with Distributed Transactions 1.1.4 RMU Enhancements 1.1.5 DISTRIBTRAN Privilege 1.2 New Security Features 1.3 Dynamic Optimization 1.4 Other Optimizer Enhancements 1.4.1 More Efficient Strategies for Queries Whose WHERE Expression Has OR Booleans 1.4.2 Improved Performance for Tables Stored in Mixed Format Storage Areas 1.4.3 Optimization and Aggregates 1.4.4 Constraint Evaluation 1.5 Journaling of Metadata Updates 1.6 Multiple Segmented String Storage Areas 1.7 Lock Timeout Mechanism 1.8 Compressed Indexes 1.9 New Data Type-SQL TINYINT and RDO SIGNED BYTE 1.10 EXPORT Now Supports the DATA Option 1.11 IMPORT Now Supports DATA and TRACE Options 1.12 Rdb/VMS V4.0 Gives Special Treatment for CDD/Plus Dictionaries 1.13 SHOW STORAGE AREA Shows a Different Storage Area Allocation 1.14 Setting Line Lengths for a File or Output Device 1.15 Changes to Run-Unit Journal (RUJ) Files 1.16 Change to Batch-Update and Exclusive Transaction Behavior 1.17 DECtrace Support for Trigger and Constraint Statistics 1.18 SQL: New and Changed Features and Statements 1.18.1 Support for the Two-Phase Commit Protocol 1.18.2 New SQL Syntax 1.18.3 String Concatenation Operator 1.18.4 Substring Manipulation 1.18.5 SQL Supports Segmented Strings 1.18.6 Computed Columns in Tables 1.18.7 SQL Changes Values Used in SQLERRD Array 1.18.8 Module Language Record Support 1.18.9 SQL C Precompiler Supports VARCHAR Host Variables 1.18.10 SQL Statements Have Been Updated to Support VAX Data Distributor V2.2 1.18.11 Diagnostic Messages for Obsolete Features 1.18.12 Sample Programs in Precompiled SQL and SQL Module Language 1.19 RDO: New and Changed Features and Statements 1.19.1 Support for the Two-Phase Commit Protocol 1.19.2 RDO Changes for CDD/Plus Compatibility 1.19.3 RDO SHOW DATABASE Statement Displays the Node Name for Remote Databases 1.20 RDBPRE: New and Changed Features and Statements 1.20.1 Support for the Two-Phase Commit Protocol 1.20.2 RDBPRE/MESSAGE_MAP Works for BASIC 1.21 RDML: New and Changed Features and Statements 1.21.1 Support for the Two-Phase Commit Protocol 1.21.2 Support for Internationalization 1.22 RMU: New and Changed Features and Statements 1.22.1 RMU/ALTER Command 1.22.2 RMU/BACKUP Command 1.22.3 RMU/CLOSE/PATH Command 1.22.4 RMU/CONVERT Command 1.22.5 RMU/COPY_DATABASE Command 1.22.6 RMU/DUMP/AFTER_JOURNAL Command 1.22.7 RMU/DUMP/AFTER_JOURNAL/STATE=PREPARED 1.22.8 RMU/DUMP/BACKUP_FILE/LABEL=(label-name-list) Command 1.22.9 RMU/DUMP/USERS/STATE=BLOCKED Command 1.22.10 RMU/MOVE_AREA Command 1.22.11 RMU/OPEN/PATH Command 1.22.12 RMU/RECOVER/RESOLVE Command 1.22.13 RMU/REPAIR Command 1.22.14 RMU/RESOLVE Command 1.22.15 RMU/RESTORE/LABEL=(label-name-list) Command 1.22.16 Security Auditing 1.22.17 RMU/SHOW STATISTICS Command 1.23 SQL/Services: New and Changed Features 1.23.1 Process Pooling 1.23.2 API Support 1.23.3 API Routines 1.23.4 Server Access 1.23.5 List Cursors 1.23.6 SQL/Services VMS API Linkable Libraries 1.23.7 Two New Installation Questions 1.23.8 SQL/Services Help Available from DCL HELP Facility 1.24 Changes Related to the Sample Personnel Database 1.25 New and Changed Rdb/VMS Logical Names 1.25.1 Disabling the Two-Phase Commit Protocol with the New SQL$DISABLE_CONTEXT Logical Name 1.25.2 Lock Timeout Mechanism Using a New RDM$BIND_LOCK_TIMEOUT_INTERVAL Logical Name 1.25.3 Restricting the Creation of Databases Using the New RDBVMS$CREATE_DB Logical Name 1.25.4 Remote Access to Rdb/VMS Using a New Logical Name RDB$REMOTE_BUFFER_SIZE 1.25.5 Changes to the RDM$BIND_BUFFERS Logical Name 1.25.6 Changes to the RDMS$BIND_SEGMENTED_STRING_BUFFER Logical Name 1.25.7 RDMS$AUTO_READY Logical Name Is No Longer Used 1.26 Obsolete Statements and Features 1.26.1 SQL Obsolete Features 1.26.2 RDO Obsolete Statements and Features 1.26.3 SQL/Services Obsolete Features 1.27 Summary of Documentation Additions and Changes 2 Software Errors Fixed 2.1 Software Errors Fixed That Apply to All Interfaces 2.1.1 EXPORT Statement Did Not Save the Maximum Storage Area Allocation 2.1.2 During IMPORT, Storage Areas Were Always Created Using the Default Page Size of 2 Blocks 2.1.3 IMPORT Did Not Restore the RDB$SYSTEM Storage Area Correctly 2.1.4 Rdb/VMS V4.0 Requires That Certain Constraints Be Redefined 2.1.5 Constraints Were Not Always Executed As Required 2.1.6 Too Many Constraints Could Be Selected or Executed 2.1.7 Constraints Could Be Executed Too Many Times 2.1.8 Indexes or Constraints Could Be Ignored by Trigger Actions 2.1.9 Indexes or Constraints Could Be Defined When Illegal Due to Active Queries 2.1.10 The Combination of Using a Trigger and Disabling Compression Did Not Update the Index 2.1.11 Triggers Can No Longer Delete Subject Table Rows 2.1.12 VAX Data Distributor Replications and Triggered Actions Were Not Performing at the Right Time 2.1.13 DBADM (ADMINISTRATOR) Privilege Was Granted by Rdb/VMS Default Protection 2.1.14 CHANGE FIELD (RDO) or ALTER DOMAIN (SQL) Could Cause Query ACCVIOs 2.1.15 A Problem Existed with Disabled Compression and the Store Clause of the SQL ALTER and RDO CHANGE STORAGE MAP Stat 2.1.16 Defining a Database with a Buffer Size of 1 Caused a Bugcheck 2.1.17 View Optimization Has Been Restored in V4.0 2.1.18 RDB$DBKEY_LENGTH System Relation Field Was Incorrect for Certain Views 2.1.19 Errors Retrying Failed Multidatabase Transactions 2.1.20 Problem with Exclusive Locking on a Multifile Database Produced a Bugcheck 2.1.21 Non-Fatal Bugcheck Resulted from Rdb/VMS Overflowing the EXEC STACK 2.1.22 The RMUCONVERT.EXE File No Longer Exists 2.1.23 Remote Access to a V3.n Database and Starting a Transaction Reserving Many Relations Caused the Buffer to Be Exct 2.1.24 RDML and RDBPRE Applications Stored Segmented Strings in the Default Storage Area Even When a Storage Area Was AD 2.1.25 Storing a Segmented String Greater in Size than 65,508 Bytes Caused a Bugcheck 2.1.26 Programs with Calls to Both Rdb/VMS and DBMS Returned Link Errors 2.1.27 Problem with Partitioned Indexes 2.1.28 Retrieving Records Using a Multisegmented Partitioned Sorted Index on Uniform Storage Areas Caused a Bugcheck toO 2.1.29 Queries with FIRST n Containing Aggregates and SORT Executed Incorrectly 2.1.30 A Bugcheck Was Generated When the Query Optimizer Tried to Match a Computed Field Before Evaluating the Expressio 2.1.31 Query Optimizer Chose to Use a Hashed Index When It Should Not Have 2.1.32 VALID IF Statements Might Not Compile or Evaluate Properly for DEFAULT VALUEs 2.1.33 A STARTING WITH Predicate on a Descending Index Returned No Data 2.1.34 A Query Using Sort Returned Rows in Field Size Order for VARCHAR Fields with a Collating Sequence Specified 2.1.35 A Compiled Query Returned Incorrect Data When Using an Index 2.1.36 Wrong Result Was Returned by a Query with a Predicate on a Computed Field 2.1.37 Query Did Not Use an Index-Only Retrieval Even If All the Fields Were in an Index 2.1.38 A Join Query Matched Nulls to Zeros or Blanks and Produced Incorrect Results 2.1.39 Batch-Update or Exclusive Transactions Failed When RDB$SYSTEM Was Read-Only 2.2 SQL Software Errors Fixed 2.2.1 SQL$.EXE Failed to Return Status on Failure of an Import Operation 2.2.2 SQL Did Not Correctly Detect Errors in a CREATE INDEX Statement 2.2.3 Generated Constraint Names and Check Option Constraint Names Were Not Checked 2.2.4 SQL Quantified Predicates Did Not Function in Trigger WHEN Predicates 2.2.5 Problem with INTEGRATE Statement When SQL Database Is Defined with DICTIONARY IS REQUIRED Clause 2.2.6 Problems with INTEGRATE SCHEMA . . . CREATE PATH in SQL 2.2.7 Short Char Variable Was Not Padded Correctly 2.2.8 SQL C Precompiler Generated Incorrect Code 2.2.9 SQLPRE Changed Names of the SQLDAs to Uppercase 2.2.10 SQL$PRE Hung in Batch Mode When an Invalid File Name Was Given 2.3 RDO and RDBPRE Software Errors Fixed 2.3.1 RDO EXPORT Now Prints the Reason for Failure 2.3.2 IMPORT Statement Could Fail to Import Views or Tables with COMPUTED BY Fields 2.3.3 RDO IMPORT Statement Did Not Support ANSI-Style Protection 2.3.4 RDO IMPORT Would Appear to Stall in an Infinite Loop 2.3.5 RDO DEFINE STORAGE MAP DESCRIPTION IS Clause Was Ignored 2.3.6 RDO SHOW RELATION Failed with INVALID_BLR for VIDA Databases 2.3.7 Views with FIRST n Could Use Outer Query Booleans for Indexed Retrieval 2.3.8 Problem Creating a View with a WITH CHECK OPTION Clause Without a WHERE Predicate in the SELECT Clause 2.3.9 Problem with Multikey Partitioned Indexes 2.3.10 Index Scan Problem Caused a FOR Loop to Loop Infinitely 2.3.11 A Bugcheck Resulted When Using the PLACE Verb Within a FOR Loop Using RDO 2.3.12 The /NOINITIALIZE Qualifier in FORTRAN Required That Four Characters Be Specified 2.3.13 RDBPRE BASIC Preprocessor Generated Ambiguous Code 2.3.14 When You Entered an ACL Entry, an Argument to the Position Clause Could Not Exceed 255 2.3.15 COMPUTED BY Clause in Aggregate Subqueries Produced Bugcheck Dumps 2.3.16 Query on System Relations Caused a Loop 2.4 RDML Software Errors Fixed 2.4.1 RDML Did Not Recover from Statistical Function Keywords Used as Host Variables 2.4.2 RDML Did Not Display the Names of Context Variables Improperly Referenced by SORTED BY and REDUCED TO Clauses 2.4.3 RDML Context Variables Could Not Be Named the Same as the Relation 2.4.4 Using Concatenated Expression Failed in C with Invalid Operand Error 2.4.5 RDML REDUCED TO Clause Generated BLR in Reverse Order 2.4.6 RDML Generated Incorrect Code for a STORE Statement in a Pascal Program 2.4.7 In SORTED BY or REDUCED TO Clauses RDML Did Not Check That Only Local Fields Were Included 2.4.8 Incompatible Data Types in VAX Pascal Generated Code 2.4.9 DECLARE_VARIABLE Restriction Removed 2.5 RMU Software Errors Fixed 2.5.1 Problem Existed with the RMU/LOAD Operation 2.5.2 RMU/BACKUP and VMS DCL COPY of Single-File Databases Made the Database Unusable 2.5.3 RMU/BACKUP/ONLINE Had Lock Conflict Problems 2.5.4 RMU/BACKUP/ONLINE Waited Indefinitely for a Quiet Point Lock 2.5.5 RMU/BACKUP/ONLINE /CHECKSUM_VERIFICATION Qualifier Would Occasionally Fail 2.5.6 A By-Area Backup Was Always Performed Against the Last Full Backup 2.5.7 Problem Existed with RMU By-Area Backup Function 2.5.8 Problem Existed with RMU/BACKUP or RMU/RESTORE with More Than 268 Database Storage Areas 2.5.9 CHANGE FIELD COLLATING_SEQUENCE Did Not Work on RMU/RESTORE Command That Used Convert 2.5.10 Problem Existed with RMU/RESTORE/INCREMENTAL and Adding a Storage Area 2.5.11 RMU/RESTORE Did Not Ignore Logical Areas Outside the Range of 1 to 16,384 and Produced a Bugcheck 2.5.12 RMU/RECOVER By-Area Did Not Work Correctly 2.5.13 RMU/RECOVER By-Area Command Has Changed Semantics 2.5.14 RMU/VERIFY Could Not Verify the Root File If the AIJ File Was Open 2.5.15 Errors Occurred During RMU/VERIFY 2.5.16 Database Verification Returned %RMU-W-BADDBPRO Error 2.5.17 RMU/REPAIR Corrupted Databases 3 Known Problems, Restrictions, and Other Notes 3.1 Known Problems and Restrictions for All Interfaces 3.1.1 Improving the Performance of the EXPORT Operation Using the DCL SET Command to Change the Default Extend ParametV 3.1.2 Undetected Deadlock with Distributed Transactions 3.1.3 Restrictions on Distributed Transactions Related to the DISTRIBTRAN Security Privilege 3.1.4 SNAPSHOTS DEFERRED May Stall Transactions 3.1.5 PLACEMENT VIA INDEX Clause Prohibits Shadow Clustering 3.1.6 Using the CREATE INDEX Statement Locks the Database If Snapshots Are Deferred 3.1.7 Source Attributes for Storage Maps Are Not Saved in Pre-V3.1 SQL IMPORT Operations 3.1.8 RDB$SYSTEM Storage Area Cannot Be Read-Only When a Relation Is Readied in Exclusive or Batch-Update Mode 3.1.9 Joined Relations Do Not Allow ``MODIFY'' If Using the WITH Clause 3.1.10 Using RDML/C to Update a VIEW Returns Errors 3.1.11 Range Query Returns Unexpected Results 3.1.12 DECLARE and START Stream Are No Longer Allowed for Certain Views 3.1.13 A Clarification of the Storage Algorithm for Mixed Pages 3.1.14 Adjustment of Cardinalities in V4.0 Is Likely to Cause Poorer Optimizer Performance 3.1.15 SELECT on SCHEMA (READ on DATABASE) ACE Is Now Required 3.1.16 Rdb/VMS Network Link Failure Does Not Allow FINISH to Tidy Up Transactions 3.1.17 Passwords for the RDB$REMOTE Account in UAF and for the RDBSERVER Object in NCP Must Be the Same 3.1.18 RDB$REMOTE Account Is Now Non-Privileged 3.1.19 VAX Data Distributor Copy Processes Do Not Process Database Pages Ahead of an Application 3.1.20 Setting an Appropriate WSEXTENT Relative to WSQUOTA for SORT/MERGE Operations 3.1.21 Attempting to Acquire a Lock Could Cause an Infinite Loop 3.2 SQL Known Problems and Restrictions 3.2.1 SQL Applications Involved in Distributed Transactions Must Have DISTRIBTRAN Privilege 3.2.2 SQL Allows False Redefinition of the DATE Data Type 3.2.3 Problem Adding a New Field to CDO Defined Record and Not to Last Position 3.2.4 Module Language Passes Extraneous Characters with Inexact Dynamic Descriptors 3.2.5 Close List Cursor Before Fetching Rows from Table Cursor 3.2.6 SELECT Statement with GROUP BY Clause Did Not Return Date Fields in EDIT STRING Format 3.2.7 When Using the BETWEEN Operator, You Should Specify the Lower Value First 3.2.8 Cautions on Using ANY, ALL, or IN Clauses in Constraint Definitions 3.2.9 SQL Does Not Recognize a Record During SQL Precompile Time 3.2.10 An SQLMOD Query Returns Empty Rows 3.2.11 Input VARCHAR Parameter Actual Value Is Longer Than Procedure Parameter 3.2.12 Release of Cursor Statements Referencing Prepared Statements Causes Problems 3.2.13 SQL Does Not Translate Logical Names Referencing Source Databases 3.2.14 Problem with Transferring a Table to an Existing Database Containing the Same Table Name 3.3 RDO and RDBPRE Known Problems and Restrictions 3.3.1 RDO SHOW USERS and SHOW MONITOR Statements Do Not Work for Remotely Accessed Databases 3.4 RDML Known Problems and Restrictions 3.4.1 RDML Generates an Error Message When Attempting to Store or Modify Read-Only (COMPUTED BY) Fields 3.5 RMU Known Problems and Restrictions 3.5.1 Non-Updatable Fields Cannot Be Unloaded Using the RMU/UNLOAD Command 3.5.2 Single-File Databases Require the /ROOT Qualifier When Using the RMU/MOVE_AREA Command 3.5.3 The RMU/BACKUP/AFTER_JOURNAL /CONTINUOUS /UNTIL="TOMORROW:+00:50" Command Fails for V3.1A and VMS V5.3 or V5.4 3.5.4 Shortened Form of RMU/RESTORE Command Does Not Work Properly 3.5.5 Installing RMU with Privileges 3.5.6 The Returned DCL $STATUS Is Inconsistent Between RMU Commands 3.6 SQL/Services Known Problems and Restrictions 3.6.1 SQL/Services Database Class Server Is Not Supported in Rdb/VMS V4.0 3.6.2 SQL/Services V4.0 Server Uses Proxy-Like and Default Access to Authorize V3.0 or V3.1 Client Applications 3.6.3 Invalid Length Is Returned by SQLSRV_VARBYTE Data Type 3.6.4 Allocating Space for SQLSRV_VARCHAR and SQLSRV_VARBYTE Data Types 3.6.5 SQL/Services V4.0 Server Error -2031 Returned to V3.1 Client APIs 3.6.6 TYPE Not CLASS Keyword Used in Configuration File 3.6.7 SQLSRV_ASCII_STRING Data Type Is Not Terminated with a NULL Character 3.6.8 Filter Expressions Return Incorrect Results 3.6.9 Using Group/System-Not Process-Logical Names in SQL/Services 3.6.10 API sqlsrv_fetch_many Routine 3.6.11 SQLSRV$SRV Default Account Must Be Present for SQL/Services to Start Automatically 3.6.12 DECnet Default File Access for SQL/Services 3.7 CDD/Plus Restrictions 3.7.1 Minimum Supported Version of CDD/Plus 3.7.2 Using CDD/Plus with PERSONNEL.COM 3.7.3 Some Views Are Not Accepted by VAX CDD/Plus V4.2 3.7.4 GRANT and REVOKE Statements Generate MBLRSYNERR Message If Attached by Path Name 3.7.5 Using CDD/Plus to Specify Collating Sequences 3.8 Restrictions Lifted by CDD/Plus Version 4.2 3.8.1 Incompatibilities Between Rdb/VMS V4.0 and CDD/Plus That Have Been Lifted by VAX CDD/Plus Version 4.2 3.9 Rdb/VMS Documentation Errors and Omissions 3.9.1 Error in Table D-1, Fields in the SQLDA 3.9.2 Error in COL-DEFINITION Syntax Diagram 3.9.3 Cursors Containing ORDER BY Clauses Are Not Read-Only 3.9.4 LIST OF BYTE VARYING Segment Size Correction 3.9.5 LIST OF BYTE VARYING in SQLTYPE Field of SQLDA 3.9.6 Value Returned by AVG Function 3.9.7 NULL Characters May Terminate Character Data Type Columns 3.9.8 ORDER BY and LIMIT TO Clauses Are Missing from SQL Quick Reference Guide 3.9.9 INSERT Statement Can Be Triggered 3.9.10 PRINT Statement Is Missing from Table 2-8 3.9.11 SQL$PRE FORTRAN AVG Function Returns Rounded Integer Value 3.9.12 Error Exists in Privilege Table 3.9.13 Clarification of Constraint Semantics 3.9.14 Declaration of the Distributed Transaction Identifier (TID) in FORTRAN Is Incorrect 3.9.15 Using RDML and the Two-Phase Commit Protocol by Calling the DECdtm System Service Calls Implicitly and ExplicitlF 3.9.16 REQUEST_HANDLE Clause in Rdb/ELN VAXELN Pascal Applications 3.9.17 Host Language Multipath Statements and RDML Update Statements 3.9.18 C Host Variable Syntax Diagram 3.9.19 Method to Create Dummy AIJ or RUJ Files to Replace One of These Missing Files Is No Longer Supported 3.9.20 Improving the Performance of Import/Export Operations 3.9.21 Changes to RMU/ALTER That Are Not Documented in V4.0 3.9.22 Description of the Storage Algorithm for Storing Records in Mixed Storage Areas When Target Pages Are Selected 3.10 SQL/Services Documentation Errors and Omissions 3.10.1 SQLSRV$DEFAULT_ACCESS Logical Name Is Incorrectly Documented 3.10.2 API sqlsrv_sqlca_sqlerrd Routine Is Omitted 3.10.3 List Cursor SQLCA Return Values for sqlsrv_open_cursor Routine 3.10.4 SQL/Services sqlsrv_sqlda_bind_data Routine Error 3.11 Restrictions Retained from V3.1 3.11.1 Object Modules Created with V3.1 and V4.0 Are Not Downward-Compatible 3.11.2 FIRST n Is Not Considered During Optimization 3.11.3 Do Not Add Fields to Relations, Define Indexes, Triggers, and Other Database Objects Based on System Relation Fie 3.11.4 Performance Considerations for Using VARYING STRING or COLLATING SEQUENCE Attribute for Index Keys 3.11.5 Sorting or Implied Sorting for Projection on a Dbkey Is Not Worthwhile 3.11.6 Many Attaches to and Detaches from the Same or Multiple Databases While Using Search Lists to Point to the DatabU 3.11.7 Do Not Disable ASTs If You Want to Access a Database Remotely 3.11.8 Unexpected Setting of the NULL Attribute After an IMPORT Operation 3.11.9 IMPORT Statement Generates Bugcheck Dumps If the Index Definition Fails 3.11.10 IMPORT Statement Failed to Complete Index Definition with Users Attached to the Database 3.11.11 Using LIB$DT_INPUT_FORMAT to Change Date Input Format Sometimes Causes Access Violation 3.11.12 Operations on F-Floating Data Round to Whole Numbers 3.11.13 Rdb/VMS Interaction with Data Distributor V2.1 May Generate Bugcheck Dumps 3.11.14 Batch-Update Transactions Can Cause a Bugcheck Dump to Occur If an Index Definition Fails 3.11.15 Rdb/VMS Logical Name, RDMS$BIND_WORK_VM, Has an Upper Limit of 65,000 Bytes 3.11.16 Reserving a Table in Exclusive Mode May Prevent Operations from Being Performed on Other Tables in the Same StorA 3.11.17 There Is a Problem Defining COLLATING SEQUENCE IS NORWEGIAN NORWEGIAN 3.11.18 Rdb/VMS and VMS Debugger Interaction 3.11.19 RDB$DBKEY_LENGTH System Field Incorrect for Certain Views 3.11.20 Problem with the Use of Virtual Memory 3.11.21 Using the /USERS_MAX and /NODES_MAX Qualifiers with the RMU/RESTORE Command Requires Both Qualifiers on the First 3.11.22 A Snapshot File Name, File Type, or Version Number Cannot Be Changed for Single-File Databases 3.11.23 There Is a 17-Character Limit for File Names When You Back Up Databases to Tape 3.11.24 RMU/DUMP/BACKUP Command Specifying a Value of 1 or 2 for the /ACTIVE_IO Qualifier Causes the AIJ Dump to Stall 3.11.25 RMU/SHOW STATISTICS Command Does Not Record All Statistics in the Binary File 3.11.26 Dumping the AIJ File Is Incompatible with Normal Usage 3.11.27 RMU/RESTORE Command May Initialize the SPAM Thresholds in One or More Storage Areas 3.11.28 Correction to the Usage Note on Constraints with the CREATE TABLE Statement 3.11.29 Using Rdb/VMS from a VMS Detached Process 3.11.30 Disable VAX SQL/Services V1.0 Startup Procedure 3.11.31 DDL Statements Cannot Refer to Objects Before Their Creation 3.11.32 Deleting Metadata in Rdb/VMS 3.11.33 SQL Schema Compilation Fails on the First Fatal Error 3.11.34 COMMENT ON Statement Cannot Be Used in CREATE SCHEMA Statement 3.11.35 Dynamic Cursors Cannot Access Views Created with GROUP BY or UNION Clause 3.11.36 Cannot Use INCLUDE Statement in Variable Declaration 3.11.37 SQL Ada Precompiler Does Not Support the Correct Overloading of Subprograms 3.11.38 SQL Precompiler Does Not Evaluate Expressions in Variable Declarations or Understand Literals 3.11.39 SQL Ada Precompiler Does Not Support Named Literals or Ranges 3.11.40 Limiting Length of File Names 3.11.41 Limiting Number of Continuation Lines per Record 3.11.42 SQL Module Language Processor Fails on the First Fatal Error 3.11.43 Database Handle Problem on START_STREAM 3.11.44 RDO CHANGE INDEX Restriction Is Now Signaled 3.11.45 Problem of Different Optimizations of the Same Query from Different Environments 3.11.46 Restrictions on Using Missing Value Fields in Nested Queries 3.11.47 STORE WITHIN and DISABLE/ENABLE COMPRESSION Clauses Cannot Both Be Specified 3.11.48 Variables Cannot Be Database Handles 3.11.49 RDML Run-Time Object Library No Longer Requires You to Link with VAXCRTL or VAXCRTLG Object Libraries or ShareabI 3.11.50 RDML/EPascal Ignores /LINKAGE=PROGRAM_SECTION Qualifier 3.11.51 RDML/Pascal Does Not Understand Some Character String Value Expressions 3.11.52 RDML/Pascal Does Not Accept All Possible Valid Pascal Host Language Variables 3.11.53 RDML Does Not Allow Nested Comments 3.11.54 C Host Variables 3.11.55 C String Continuation Character 3.11.56 Path Name and the DATABASE Statement 3.12 DSRI Notes and Restrictions Retained from V3.1 3.12.1 RCI Instantiation Number Must Be Zero for Remote Access 3.12.2 Context Variables That Are Not Unique Within a Request Cause Invalid BLR 3.13 CDD/Plus Restrictions Retained from Rdb/VMS V3.1 3.13.1 CDD/Plus COMPUTED BY Fields Are Not Currently Supported in Rdb/VMS Relations or Views 3.13.2 EXPORT WITH NOEXTENSIONS Statement Can Corrupt the CDD$DATABASE A Process Pooling A.1 Process Pooling Overview A.2 Process Pooling Components A.3 Communication Server Process A.3.1 The Default Configuration File A.3.2 Modifying the Configuration File A.3.2.1 Procedures for Modifying the Configuration File A.3.2.2 Rules for Modifying the Configuration File A.4 Execution Server Processes A.4.1 Choosing an Execution Server Process A.4.2 Generic Class Execution Server Processes A.4.3 Database Class Execution Server Processes A.4.3.1 System Management Tasks: Setting Up Database Servers A.4.3.2 Programmer Tasks: Setting Up Database Servers A.4.4 The Dynamic Nature of Execution Servers A.5 Methods of Server Access A.6 How to Enable Server Access A.6.1 Explicit Access A.6.2 SQL/Services Proxy Access A.6.3 SQLSRV$SRV Default Account Access A.7 Reinitializing Proxy and Default Access EXAMPLES A-1 Definition of Generic Execution Server Process A-2 Definition of Database Execution Server Process FIGURES A-1 Communication Server Handling Requests for Processing A-2 Operational Phases of the Communication Server A-3 Default Generic Class Subpool A-4 Components Affecting Database Class Servers A-5 Methods for Server Access TABLES 1 Database Terms 1-1 Sample Programs in Precompiled SQL and SQL Module Language 1-2 Obsolete Keywords for DECLARE and SET TRANSACTION 1-3 Obsolete Statements 3-1 Fields in the SQLDA A-1 Process Pooling Components A-2 Configuration File Parameters A-3 Methods of Accessing the Server System