SEARCH CONTACT US SUPPORT SERVICES PRODUCTS STORE
United States    
COMPAQ STORE | PRODUCTS | SERVICES | SUPPORT | CONTACT US | SEARCH
gears
compaq support options
support home
software & drivers
ask Compaq
reference library
support forum
frequently asked questions
support tools
warranty information
service centers
contact support
product resources
parts for your system
give us feedback
associated links
.
} what's new
.
} contract access
.
} browse patch tree
.
} search patches
.
} join mailing list
.
} feedback
.
patches by topic
.
} DOS
.
} OpenVMS
.
} Security
.
} Tru64 Unix
.
} Ultrix 32
.
} Windows
.
} Windows NT
.
connection tools
.
} nameserver lookup
.
} traceroute
.
} ping
OpenVMS VMS721H1_RMS-V0300 Alpha V7.2-1H1 RMS ECO Summary

TITLE: OpenVMS VMS721H1_RMS-V0300 Alpha V7.2-1H1 RMS ECO Summary New Kit Date : 12-MAR-2001 Modification Date: Not Applicable Modification Type: Updated Kit Supersedes VMS721H1_RMS-V0200 NOTE: An OpenVMS saveset or PCSI installation file is stored on the Internet in a self-expanding compressed file. For OpenVMS savesets, the name of the compressed saveset file will be kit_name.a-dcx_vaxexe for OpenVMS VAX or kit_name.a-dcx_axpexe for OpenVMS Alpha. Once the OpenVMS saveset is copied to your system, expand the compressed saveset by typing RUN kitname.dcx_vaxexe or kitname.dcx_alpexe. For PCSI files, once the PCSI file is copied to your system, rename the PCSI file to kitname-dcx_axpexe.pcsi, then it can be expanded by typing RUN kitname-dcx_axpexe.pcsi. The resultant file will be the PCSI installation file which can be used to install the ECO. Copyright (c) Compaq Computer Corporation 2001. All rights reserved. OP/SYS: OpenVMS Alpha COMPONENT: RMS SOURCE: Compaq Computer Corporation ECO INFORMATION: ECO Kit Name: VMS721H1_RMS-V0300 DEC-AXPVMS-VMS721H1_RMS-V0300--4.PCSI ECO Kits Superseded by This ECO Kit: VMS721H1_RMS-V0200 ECO Kit Approximate Size: 3120 Blocks Kit Applies To: OpenVMS Alpha V7.2-1H1 System/Cluster Reboot Necessary: Yes Rolling Re-boot Supported: Yes Installation Rating: INSTALL_1 1 - To be installed on all systems running the listed version(s) of OpenVMS. Kit Dependencies: The following remedial kit(s) must be installed BEFORE installation of this kit: VMS721H1_UPDATE-V0300 VMS721H1_CLIUTL-V0100 In order to receive all the corrections listed in this kit, the following remedial kits should also be installed: None ECO KIT SUMMARY: An ECO kit exists for RMS on OpenVMS Alpha V7.2-1H1. This kit addresses the following problems: PROBLEMS ADDRESSED IN VMS721H1_RMS-V0300 KIT o Fix to prevent a fatal INVEXCEPTN lock manager bugcheck when global buffers are enabled. This problem involves a race condition with the following rare set of conditions occurring simultaneously: o The last accessor of a global section cleaning up any cached global bucket system locks on one node. o A lock request on another node resulting in delivery of a system fork lock blocking interrupt to the latter node that attempts to convert a lock after it has been dequeued by the last accessor. Images Affected: [SYS$LDR]RMS.EXE o Fix for invalid input parameter in call to SCH$QAST to prevent a potential fatal INVEXCEPTN system bugcheck when global buffers are enabled. Images Affected: [SYS$LDR]RMS.EXE o Fix for potential RMS lock hang when global buffers are enabled. This problem involves a rare condition if the last accessor of the global section is interrupted by an abort rundown, which may lead to the need for the cleanup of the global section not being properly detected. This could result in the survival of the global section and a global bucket system lock after the last accessor is deleted. Since this problem requires the accessor that is aborted to also be the last accessor, it is more apt to occur with a file that accessors come and go -- with a file that is opened and closed frequently and may have only one accessor at a particular time (e.g. RIGHTSLIST.DAT) -- versus a file with global buffers enabled that typically has several concurrent accessors at all times until there is an application (or system) shutdown. Images Affected: [SYS$LDR]RMS.EXE o Fix to prevent a nonfatal RMS bugcheck (ENQDEQFAIL) when an enqueue request fails with a CVTUNGRANT status. The ENQDEQFAIL bugcheck may be reported when an RMS lock manager request to rearm the blocking AST associated with a directory cache fails with a CVTUNGRANT status. The process may either: 1. Terminate (SYSGEN parameter BUGCHECKFATAL not enabled) with an RMSBUG; or 2. Crash the system (BUGCHECKFATAL enabled) with a RMSBUG. The footprint of the crash will reflect an R2 register value of %XFFFFFFF4 (ENQDEQFAIL) with an R0 register value of %X0000213c (SYSTEM-F-CVTUNGRANT). Images Affected: [SYS$LDR]RMS.EXE o Fix for SQO error on CONVERT/NOSORT with collated key. Producing an indexed file with a collated key using the qualifier /NOSORT with the CONVERT may fail with the following error: %CONV-F-READERR, error reading -RMS-F-SQO, operation not sequential (SQO set) Images Affected: [SYSEXE]CONVERT.EXE [SYSLIB]CONVSHR.EXE o RMS support for new qualifier /SHARE added to SET FILE, which is dependent on the VMS721H1_CLIUTL-V0100 kit being installed. The /SHARE qualifier allows you to enable or disable global buffers or statistics on a file currently being accessed by other users. Only new accessors of the file will acquire the new settings. This qualifier requires SYSPRV (system privilege). The /SHARE qualifier is only valid with the following qualifiers: /[NO]GLOBAL_BUFFER=count/SHARE /[NO]STATISTICS/SHARE If other qualifiers are needed, they must be entered in a separate SET FILE command. /[NO]GLOBAL_BUFFER=count/SHARE The /SHARE qualifier can be used to enable or disable global buffers on a file currently being accessed. However, any new global buffer settings will only be applied to new accessors of the file. And if a file is already opened with global buffers, any new number of global buffers will not take effect until the file is closed by all accessors of the file. /[NO]STATISTICS/SHARE The /SHARE qualifier can be used to enable or disable statistics on a file currently being accessed. However, only statistics of new accessors of the file will be measured. EXAMPLE: $ SET FILE/SHARE/GLOBAL_BUFFER=5000/STATISTICS INVENTORY.IDX This example sets 5000 global buffers on the INVENTORY.IDX file and enables statistics. Without the /SHARE qualifier, if the file was open when the SET FILE command was issued, the following error would be returned: SYSTEM-W-ACCONFLICT (file access conflict). The /SHARE qualifier allows the global buffers and statistics to be enabled on an open file. However, these settings only apply to new accessors of the file. Images Affected: [SYS$LDR]RMS.EXE [SYSEXE]SET.EXE [SYSLIB]DCLTABLES.EXE with modified SET.CLD The latter two images require the installation of the VMS721H1_CLIUTL-V0100 kit. PROBLEMS ADDRESSED IN VMS721H1_RMS-V0200 KIT o Autoextend problem with shared write sequential file if global buffers enabled. When an autoextend occurs with a shared write sequential file with global buffers enabled, if both readers and writers are concurrently processing data at the end-of-file, a window exists for the readers when either an infinite process loop may occur or an inappropriate RMS-E-EOF or RMS-F-IRC error may be returned. The likelihood of either problem occurring increases significantly if the deferred-write (DFW) option is enabled or the sequential file does not have a generous initial allocation or extend quantity. Images Affected: [SYS$LDR]RMS.EXE This fix is included in the next release after OpenVMS Alpha V7.2-1H1. o Fix for remote file transfer performance degradation if UPI enabled. As a side-effect of a DAP/FAL change made to the Alpha Version 7.2 family, the SQO (sequential only) option was inappropriately disabled in a record stream when the UPI (user provided interlock) option was enabled if RMS detected any form of write sharing. This resulted in reducing the performance of a remote file transfer that had the UPI option enabled due to the overhead of sending the file record-by-record rather than using the more efficient block mode transfer supported by the SQO option. Images Affected: [SYS$LDR]RMS.EXE This fix is included in the next release after OpenVMS Alpha V7.2-1H1. Problems Addressed In VMS721H1_RMS-V0100: o A LDQ (load quad) instruction generated by the Bliss-64 compiler (default quadword alignment) may result in an attempt being made to read or write 4 bytes beyond the end of an RMS internal buffer which ends exactly on a page boundary with an adjacent inaccessible page. The process may either: 1. Terminate (SYSGEN parameter BUGCHECKFATAL not enabled) with an access violation (ACCVIO); or 2. Crash the system (BUGCHECKFATAL enabled) with a SSRVEXCEPT ACCVIO. There are too many variables (for example, bucket size, number of buffers, number of keys, record location) to predict in advance that a file is vulnerable to this problem. However, we do know that the right combination of conditions must be rare since the problem has been dormant for several releases. It was introduced with the conversion of several Bliss-32 RMS modules to Bliss-64 as part of the support for 64-bit addresses added to Alpha V7.0. o An unusual timing condition may cause an application to get incorrect data returned due to an interaction between caching and read record access. Global buffers must be enabled on the file, and there must be several processes trying to concurrently access a data bucket that has to be brought into the global cache (i.e., is not already in the global cache). This was uncovered doing internal stress testing with an SMP (8 CPU) system with caching enhancements for a future release. It was reproduced with very heavy contention to a data bucket with sequential read access being done. We have not been able to reproduce the problem without the speed of the caching enhancements. It is unknown whether this problem could occur in V7.2-1H1, but it is best to apply this update as a precaution. o The hashing interlock mechanism, which was implemented in V7.2, has been redesigned to eliminate the timer-based strategy that was used during periods of high contention. A system could become overburdened by Timer Queue activity (IPL 8) when the contention for an interlock reached a threshold. This Timer Queue activity precluded the interlock owner from releasing the interlock and resulted in excessive Timer Queue activity consuming the primary CPU. Images Affected: - [SYS$LDR]RMS.EXE - [SYS$LDR]DDIF$RMS_EXTENSION.EXE - [SYSLIB]SDARMS$SHARE.EXE o Fix to prevent a process hang waiting on an RMS lock when reverse (key-less-than) search criterion is used on a file with global buffers enabled. Access to an RMS indexed file may hang indefinitely waiting on a lock request when the following three conditions are met: - Global buffers are enabled. - Key-Less-Than match criterion is being utilized. - The key of reference is switched between two adjacent lookups (e.g., key of reference is switched from key 0 to key 1). This problem is fixed in the release of OpenVMS Alpha to follow V7.2-1H1. o This is a fix to prevent a SSRVEXCPT bugcheck during process rundown when an RMS AST is delivered to the process after the process address space has already been released. In order for this to occur, the process must have been utilizing global buffers. This issue represents a very small timing window and should be extremely rare. o Accessing a file by secondary key that has Recovery Unit (RU) journaling enabled in which a large number of deletes has occurred may incur an inordinate amount of direct IO activity. This is due to RMS having to process the RU deleted entries in the secondary key structure. This is not an issue when access to the file is by the primary key. This change is a performance enhancement in which RMS will now perform cleanup of the RU deleted Secondary Index Data Record entries when they are initially encountered through a read operation. This will reduce the IO required to process these entries for all future accesses. Access by the primary key of the file already performs this optimization. o CONVERT/SHARE previously read the input primary data records (record I/O) with the RAB$V_RRL (read regardless) option enabled. As a performance enhancement, RAB$V_RRL was replaced with the new RAB$V_NQL (no query locking) record option if /SHARE is used. This results in no record locking being done for all the reads of the primary data records from the input file. o The new Alpha global buffer read-mode lock support introduced in V7.2-1H1 is functionally compatible with both VAX and older Alpha releases. Operations in mixed clusters produce correct results. However, there is a locking fairness issue that may arise with mixed cluster operations (e.g., an Alpha V7.1-2 or V7.2-1 version or VAX versions). In a mixed cluster environment with very high contention for specific buckets, it is possible for accesses to write-shared files on nodes using read-mode bucket locking to dominate access to a bucket. Nodes without this support might be unable to access the bucket for a protracted period of time. While V7.2-1H1R does include the new global buffer read-mode lock support and so will not be affected by the latter issue, it is also possible to observe comparable behavior on all OpenVMS versions when dealing with accesses to write-shared files without global buffers enabled -- even on a standalone system. A similar fairness issue between lock conversions and new lock requests may be observed in which the new lock requests may remain ungranted for an extended period of time. This kit includes support in RMS for a new option to improve fairness under high contention conditions for write-shared files, but selecting this option may noticeably increase locking overhead. The option may be set at a process or system level. Since many applications will never encounter this issue, the default system behavior leaves this option disabled. A future lock management enhancement should make this fairness workaround unnecessary for later releases. The option is controlled using the /CONTENTION_POLICY qualifier to the DCL command SET RMS_DEFAULT. The following are valid PROCESS keywords (/SYSTEM not specified): NEVER Never use the higher overhead option to improve fairness for any write-shared files accessed by this process; minimal overhead. SOMETIMES Use this option for fairer bucket access (but higher overhead) to any write-shared files with global buffers enabled that are accessed by this process. ALWAYS Use this option for fairer bucket access (but higher overhead) to all write-shared files accessed by this process. SYSTEM_DEFAULT (Default) Use system setting. Note that this keyword is disallowed with /SYSTEM. The following are valid SYSTEM keywords (/SYSTEM specified): NEVER (Default) Never use the higher overhead option to improve fairness for any write-shared files accessed on the system; minimal overhead. SOMETIMES Use this option for fairer bucket access (but higher overhead) to any write-shared files with global buffers enabled that are accessed on the system. ALWAYS Use this option for fairer bucket access (but higher overhead) to all write-shared files accessed on the system. In addition to the RMS image, modifications to the following images contained in the VMS721H1_UPDATE-V0300 kit (a prerequisite to installing this kit) are required in order for this functionality to take affect: - [SYSEXE]SET.EXE - [SYSMSG]CLIUTLMSG.EXE - replacement of revised SET.CLD in [SYSLIB]DCLTABLES.EXE Without these modified images, RMS will use NEVER as the default for the CONTENTION_POLICY option. INSTALLATION NOTES: This kit requires a system reboot. Compaq strongly recommends that a reboot is performed immediately after kit installation to avoid system instability If you have other nodes in your OpenVMS cluster, they must also be rebooted in order to make use of the new image(s). If it is not possible or convenient to reboot the entire cluster at this time, a rolling re-boot may be performed. INSTALLATION INSTRUCTIONS: Install this kit with the POLYCENTER Software installation utility by logging into the SYSTEM account, and typing the following at the DCL prompt: PRODUCT INSTALL VMS721H1_RMS /SOURCE=[location of Kit] The kit location may be a tape drive, CD, or a disk directory that contains the kit. Additional help on installing PCSI kits can be found by typing HELP PRODUCT INSTALL at the system prompt All trademarks are the property of their respective owners.



This patch can be found at any of these sites:

Colorado Site
Georgia Site



Files on this server are as follows:

dec-axpvms-vms721h1_rms-v0300--4.README
dec-axpvms-vms721h1_rms-v0300--4.CHKSUM
dec-axpvms-vms721h1_rms-v0300--4.pcsi-dcx_axpexe
vms721h1_rms-v0300.CVRLET_TXT

privacy and legal statement