Allows you to enable or disable the database Row Cache feature and to modify certain parameters on a per-cache basis.
1 – Description
You can use the RMU Set Row_Cache command to allow the database Row Cache feature to be enabled or disabled without requiring that the database be opened. You can also use the Alter parameter to make modifications to one cache at a time.
2 – Format
(B)0[mRMU/Set Row_Cache root-file-spec [4mCommand[m [4mQualifiers[m x [4mDefaults[m x /Alter=(Name=cache-name,option(,...)) x See Description /Backing_Store_Location=devdir x See Description /NoBacking_Store_Location x See Description /Disable x None /Enable x None /[No]Log x Current DCL verify value /Sweep_Interval=n x See Description /[No]Sweep_Interval x See Description
3 – Parameters
3.1 – root-file-spec
Specifies the database root file for which you want to modify the Row Cache feature.
4 – Command Qualifiers
4.1 – Alter
Alter=(Name=cachename,option(, ...)) Specifies the action to take on the named cache. You must specify the cache name and at least one other option. The /Alter qualifier may be specified multiple times on the command line. Each /Alter qualifier specified operates on one unique cache if no wildcard character (% or *) is specified. Otherwise, each /Alter operates on all matching cache names. o Name=cachename Name of the cache to be modified. The cache must already be defined in the database. You must specify the cache name if you use the Alter qualifier. This parameter accepts the wildcard characters asterisk (*) and percent sign (%). o Backing_Store_Location=devdir Specifies the name of the cache-specific default directory to which row cache backing file information is written for the specified cache. The database system generates a file name (row-cache-name.rdc) automatically for each row cache backing file it creates when the RCS process starts. Specify a device name and directory name; do not include a file specification. By default, the location is the directory of the database root file unless a database-specific default directory or a cache-specific default directory has been set. o NoBacking_Store_Location Specifies that there is no cache-specific default directory to which row cache backing file information is written for the specified cache. o Drop Specifies that the indicated row cache is to be dropped (deleted) from the database. o Shared_Memory=keyword Specifies the shared memory type and parameters for the cache. Valid keywords are: - Type=option Specify one of the following options: * Process Specifies traditional shared memory global section, which means that the database global section is located in process (P0) address space and may be paged from the process working set as needed. * Resident Specifies that the database global section is memory resident in process (P0) address space using shared page tables. This means that the global section is fully resident, or pinned, in memory, and uses less physical and virtual memory (for process page tables) than a traditional shared memory global section. - Rad_Hint=n NoRad_Hint Indicates a request that memory should be allocated from the specified OpenVMS Resource Affinity Domain (RAD). This keyword specifies a hint to Oracle Rdb and OpenVMS about where memory should be physically allocated. It is possible that if the requested memory is not available, it will be allocated from other RADs in the system. For systems that do not support RADs, no Rad_Hint specification is valid. The Rad_Hint keyword is valid only when the shared memory type is set to Resident. If you set the shared memory type to System or Process, you disable any previously defined RAD hint. Use Norad_Hint to disable the RAD hint. o Slot_Count=n Specifies the number of slots in the cache. o Slot_Size=n Specifies the size (in bytes) of each slot in the cache. o Snapshot_Slot_Count=n Specifies the number of snapshot slots in the cache. A value of zero disables the snapshot portion for the specified cache. o Sweep_Interval=n Specifies the periodic cache sweep timer interval in seconds. Valid values are from 1 to 3600. o NoSweep_Interval Disables the periodic cache sweep timer interval. o Working_Set_Count=n Specifies the number of working set entries for the cache. Valid values are from 1 to 100.
4.2 – Backing Store Location=devdir
Specifies the name of the database-specific default directory to which row cache backing file information is written. The database system generates a file name (row-cache-name.rdc) automatically for each row cache backing file it creates when the RCS process starts up. Specify a device name and directory name; do not include a file specification. The file name is the row-cache-name specified when creating the row cache. By default, the location is the directory of the database root file unless a database- specific default directory or a cache-specific default directory has been set.
4.3 – Disable
Disables row caching. Do not use with the Enable qualifier.
4.4 – Enable
Enables row caching. Do not use with the Disable qualifier.
4.5 – Log
Log Nolog Specifies whether the processing of the command is reported to SYS$OUTPUT. Specify the Log qualifier to request log output and the Nolog qualifier to prevent it. If you specify neither, the default is the current setting of the DCL verify switch.
4.6 – NoBacking Store Location
Specifies that there is no database-specific default directory to which row cache backing file information is written.
5 – Usage Notes
o This command requires exclusive database access (the database cannot be open or accessed by other users). o The Alter qualifier can be specified multiple times on the command line. Each use of the qualifier operates on a unique cache. o Only one value can be supplied with the Rad_Hint keyword. The indicated RAD must contain memory. o When shared memory is set to System (with Galaxy enabled) or to Resident, then the process that opens the database must be granted the VMS$MEM_RESIDENT_USER identifier. o For applications that can be partitioned into one or more RADs, the Rad_Hint qualifier allows additional control over exactly where memory for caches and global sections is allocated. This control can permit increased performance if all application processes run in the same RAD, and the database and row cache global sections also reside in that same RAD. o When Resident shared memory is specified, the global demand- zero pages are always resident in memory and are not backed up by any file on any disk. The pages are not placed into the process's working set list when the process maps to the global section and the virtual memory is referenced by the process. The pages are also not charged against the process's working set quota or against any page-file quota. o To save physical memory, Oracle Rdb generally attempts to create and use shared page tables when creating large resident global sections. o The total number of rows for any individual cache (the combination of live rows and snapshot rows) is limited to 2,147,483,647.
6 – Examples
Example 1 The following example sets the slot count on cache "mycache". $ RMU/SET ROW_CACHE/ALTER=(NAME=mycache, SLOT_COUNT=8888) Example 2 This command disables all caches. $ RMU/SET ROW_CACHE/DISABLE Example 3 The following sample specifies that cache "cache2" should use RAD 2. $ RMU/SET ROW_CACHE/ALTER=(NAME=cache2, SHARED_MEM=(TYPE=RESIDENT, - _$ RAD_HINT=2) Example 4 This example drops cache "seacache". $ RMU/SET ROW_CACHE/ALTER=(NAME=seacache, DROP) Example 5 This example shows multiple uses of the Alter qualifier. $ RMU /SET ROW_CACHE MF_PERSONNEL/ALTER=(NAME = RDB$SYS_CACHE, - _$ SLOT_COUNT = 800, WINDOW_COUNT = 25) - _$ /ALTER= (NAME = RESUMES,SLOT_SIZE=500,WORKING_SET_COUNT = 15) Example 6 The following example modifies the database MYDB to set the snapshot slot count for the cache EMPL_IDX to 25000 slots and disables snapshots in cache for the SALES cache. $ RMU /SET ROW_CACHE DGA0:[DB]MYDB.RDB - _$ /ALTER=(NAME=EMPL_IDX, SNAPSHOT_SLOT_COUNT=25000) - _$ /ALTER=(NAME=SALES, SNAPSHOT_SLOT_COUNT=0) Example 7 The following example alters two caches: $ RMU /SET ROW_CACHE MF_PERSONNEL - /ALTER= ( NAME = RDB$SYS_CACHE, SLOT_COUNT = 800) - /ALTER= ( NAME = RESUMES, - SLOT_SIZE=500, - WORKING_SET_COUNT = 15) Example 8 The following command alters caches named FOOD and FOOT (and any other cache with a 4 character name with the first three characters of "FOO" defined in the database): $ RMU /SET ROW_CACHE MF_PERSONNEL - /ALTER= ( NAME = FOO%, BACKING_STORE_LOCATION=DISK$RDC:[RDC])