HP OpenVMS Systemsask the wizard |
The Question is: the sysuaf.dat file has a max bucket size of 3 and global buffer count of 4. We have 2474768 free global pages, 238 free global sections. the gblpagfil is 150000. Changing gblpagfil to 160000 still has no effect on the error. The error occurs with any us ername, but on only one node of a 4 node cluster. Also there are no statistics on the file. Checking through install shows no RMS$ entries, so gblpagfil should have loads of free space even before I increased the value. What have I missed? The Answer is : The OpenVMS Wizard finds the pairing of the CRMP and DME messages rather odd. The underlying error could be the result of insufficient PGFLQUOTA, or potentially due to excessive consumption of process dynamic memory. Possibly due to too many process logical names being defined, or due to too many process permanent files open. Use SHOW PROCESS/MEMORY and see if the free space on a failing process is lower than a successful process. If this error only occurs in a batch job, check SHOW RMS to ensure the multibuffer count for sequential disk files is set to 0. Although the size of the process dynamic memory area can be increased using the system parameter CTLPAGES, it would be preferable to reduce the demand on the resource. Prior to OpenVMS V7.3, RMS can return the DME error mapping the global section used for global buffers for exactly two specific reasons: o The $CRMPSC call returned a size smaller than the amount requested for the section. o The existing section is corrupt -- RMS performs a sanity check on the mapped section. If the $CRMPSC itself fails, RMS returns that status with the CRMP error. Starting with V7.3, RMS now distinguishes between the two conditions, returning the BADGBH error for the second case. If the problem persists over a system reboot, then the problem is likely a resource issue -- there are several articles available via http://www.itrc.hp.com/service/james/CPQhome.do that detail RMS resource requirements for global buffers. Otherwise, the problem was a corrupt section. The OpenVMS Wizard would expect that the BADGBH status enhancement might well be (or already has been) back-ported to several other recent OpenVMS releases as a result of the standard kit ECO processing. The OpenVMS Wizard would also encourage cleaning out the cruft that invariably tends to build up in MODPARAMS.DAT over the years, and using several passes of the AUTOGEN tool (with FEEDBACK) to regenerate the system parameters to more appropriate values. While working within MODPARAMS.DAT, please remove absolute system parameter assignments when a MIN_ or MAX_ or ADD_ setting could be used, and remove any settings for old releases or old products. -- DME, dynamic memory exhausted Facility: RMS, OpenVMS Record Management Services Explanation: OpenVMS RMS is unable to allocate additional process memory for the given request (usually an RMS $OPEN or $CONNECT system service call). Such requests can require a large number of buffers, large buffer sizes, or both. User Action: Increase the amount of available process memory, or decrease the size or number of requested buffers. For process permanent files (such as DCL OPEN, DCL command procedures using "@filename," SYS$INPUT, SYS$OUTPUT, SYS$ERROR, and batch log files), the size of available memory is governed by the SYSGEN parameter PIOPAGES. The number of buffers and their sizes is governed by the DCL command SET RMS. Only 63 process permanent files can be open at once; any attempt to open more such files produces this message. For image files, process memory is governed by the UAF parameter PGFLQUOTA and the SYSGEN parameter VIRTUALPAGECNT (on VAX systems only). The size and number of buffers are controlled by the application, the DCL command SET RMS, or both. Image buffer space can also be controlled with the linker option of IOSEGMENT, which can determine the amount of fixed RMS memory allocated and the process region in which it is allocated. See the OpenVMS Linker Utility Manual for further information. CRMP, CRMPSC system service failed to map global buffers Facility: RMS, OpenVMS Record Management Services Explanation: There are not enough available global sections (SYSGEN GBLSECTIONS), global pages (SYSGEN GBLPAGES), or global page file entries (SYSGEN GBLPAGFIL) to grant the requested number of global buffers or to create the global section associated with statistics enabled on the file. This message is associated with a system status code returned from the $CRMPSC (Create and Map Section) system service called from the RMS file system to map global buffers. User Action: If statistics is enabled on the file, execute a SET FILE/NOSTATISTICS command on the file until the appropriate system generation parameters can be increased. Otherwise, try the following, as appropriate: o Reduce the number of global buffers requested in the FAB$W_ GBC field. o Execute a SET FILE/GLOBAL_BUFFER=0 command on the file and retry the Connect service. o Wait until an orderly shutdown of the system can be arranged; then increase the appropriate system generation parameters and retry the operation.
|