A number of configuration parameters are defined in a configuration file held in each database tree. The file is called:
database-name/configs/config
The config file can be edited by the database owner, provided that no-one is logged on to the database. The configuration parameters for a database are read when the database daemon starts up. To implement changes to an active database, therefore, all users must be logged off and the database server terminated using killreal -d.
There is a master configuration file in the directory REALROOT/files. This file contains standard settings which are copied to each database when it is created. You may wish to change some parameters, for example tape configuration, in the master configuration file.
Configuration parameter are listed below, in alphabetical order, together with example settings and, where applicable, default settings.
Note: Some of the settings in this file can be overridden by host environment variables.
If set to Y, specifies that, if the
reality command has been run with the -U option,
logging off a user from another port with the
LOGOFF command will
return them to the Logon please:
prompt
instead of to the host command prompt. On Windows, this applies only when running
Reality from the command prompt.
Default: N
This is a bit-significant numeric field that controls what appears in Audit logs. The bits have the following meanings:
Bit | Decimal value | Function |
---|---|---|
0 | 1 | Log Proc, RPL, SQL and TCL macro commands, and DataBasic performs and executes in addition to TCL commands. |
1 | 2 | Add a time stamp to the log. |
2 | 4 | If set, log times to the nearest millisecond (for example, 10:28:49.483);
otherwise, log to the nearest second.
Note: The accuracy of the time is dependent on the
granularity of the underlying operating system time.
|
3 | 8 | Add a date stamp to the log. |
4 | 16 | Add a character to show the context (TCL, Proc, etc.) to each log entry and a key to the context characters used (see TCL.LOG File). |
5 | 32 | Log calls to DataBasic external subroutines and functions (see Note 2). |
6 | 64 | Log returns from DataBasic external subroutines and functions (see Note 2). |
7 | 128 | Add a user-defined attribute, set with the DataBasic SYSTEM(109) or ASSIGN statement, to the log. |
Notes
Default: 10 (00001010); that is:
If set to Y
, specifies that new files and those restored
from a
logical save
will use automatic file sizing
by default.
Note: This parameter is set to Y
in the master configuration file, so
that automatic file sizing will be used on new databases. For an existing
database, you will need to set it in the database configuration file.
Default: N
If set to 1, specifies that the SYSTEM dictionary has case-insensitive item-ids. Has no effect unless IIDCaseControl is also set.
Default: 0
Note: mkdbase menu options allow you to set this parameter when you create a database.
If set to any value other than Y
, prevents the database's temporary
directory being cleared when the database daemon is started.
Default: Y
CompressTapeImage
specifies the default compression level for tape
images created from this database. It must be set to a number from 0 to 9, where
0 is no compression (fastest) and 9 is maximum compression (slowest). The
recommended compression level, optimising compression and performance, is 2.
Default: 0
The DataCaseControl
parameter specifies whether users and
applications are allowed to select data case insensitivity on this database. If
set to 1, data case insensitivity can be selected; otherwise, it cannot. The
default is 0 (cannot be selected).
See Case Sensitivity for more details.
DateFormat
defines the default format in which the day's date is
represented when processed by relevant English conversions and by DataBasic
ICONV or OCONV statements that use these conversions. This default format can be
overridden for the duration of a Reality logon session by use of the TCL command
DATE-FORMAT. Possible values
are:
Standard Displays mm/dd/yy
International Displays dd/mm/yy
Default: International
Example: DateFormat=Standard
Setting DbStart
specifies that a
database start-up Proc should be run automatically each time the database is
started. The Proc can be run in either parallel or exclusive mode, depending on
the value of the DbStart
parameter:
0 Do not run the database start-up Proc.
1 Parallel mode. The database start-up Proc runs in parallel with any connections to the database.
Parallel mode can be used for starting just despoolers and TIPH’s.
2 Exclusive mode. The first connection to the database is rejected and logons are inhibited while the database start-up Proc runs (connections are rejected with the error message <49018>: Start up proc in progress). When the Proc completes logons are enabled automatically.
In exclusive mode, the database start-up Proc has exclusive access to the database. You should select this mode if the Proc has to clear error logs (for example) before allowing users to log on.
Default: 0
Windows onlySpecifies the default printer type for SYS printers on Windows. Possible values are:
raw The print data is either passed directly to the printer without processing or via a Printer Independence translation table.
winprinter The print data is routed via the Windows GDI (Graphical Device Interface). This is a high level printer-independent interface that translates the print data into a graphical format that can be printed without further processing by the printer. Use this option with printers designed to work with the Windows GDI.
The printer type can also be specified when you set up the despooler.
On UNIX hosts, this parameter is ignored.
Example: DefaultSystemPrinterType=raw
Default: raw
The level of file whose closure will be deferred (only normally required on filestore databases) – one of the following values:
0 Disable deferred close.
1 Defer MDs.
2 Defer MDs & DICTs.
3 Defer MDs, DICTs & DATA sections.
Default: 2
The maximum number of files whose closure may be deferred. Only normally used on filestore databases.
Default: 30
Setting ForceFreeSpaceUpd
specifies that every block in the database
should be marked as free or in use (the default is to mark only the first block
of each contiguous set of blocks). Selecting this option makes the free space
check option (-f) available on the
realdbck utility, but can reduce
performance in normal use.
You can also select this configuration option by setting the host
environment variable RFSSETFREE. This overrides any
ForceFreeSpaceUpd
settings.
You should only set this option if directed by Northgate support staff.
Default: 0
UNIX onlyControls whether Reality prompts for a password if the Unix and Reality user-ids are the same:
1 Reality always prompts for a password.
0 Reality does not prompt for a password if the Unix and Reality user-ids are the same.
Default: 0
Specifies the default frame size in kilobytes (1, 2, 4 or 8) used when creating a database. Only valid in the master configuration file; ignored if set in the database configuration file.
It is recommended that, when migrating from another MultiValue system, you should set this parameter to the frame size of the original database.
Example: FrameSize=4
Default: 1
Specifies the location of a file or partition to be used for
checkpointing when
backing up with
Example: CheckpointPath=/users/realman/checkpoints
Default: Not set
HashType
specifies the hashing algorithm used by Reality. Possible
values are:
1 Use a hashing algorithm that is compatible with earlier versions of Reality (earlier than V8.1) and other MultiValue systems.
2 Use a hashing algorithm that can better handle item IDs longer than 28 characters.
Notes:
Default: If this parameter is not set, the hashing algorithm defaults to type
1. However, all new databases are created with
HashType
equal to
2.
The IIDCaseControl
parameter specifies whether users and
applications are allowed to create case-insensitive files on this database. If
set to 1, case-insensitive files can be created; otherwise, they cannot. The
default is 0 (case-sensitive only).
Note: Changing this parameter only has an effect the next time a database is remade (with mkdbase –r). It does not change the case-insensitivity of an existing database.
See Case Sensitivity for more details.
ItemLockTimeOut
defines the length of time in seconds after which an
Item Deadlock warning message is sent to the terminal screen and
server log.
ItemLockTimeOut=0
specifies the default of 30 seconds.
ItemLockTimeOut=1
disables deadlock detection.
Example: ItemLockTimeOut=15
Default: 30 seconds.
The KeyCaseControl
parameter specifies whether users and
applications are allowed to select keyword case-insensitivity on this database. If
set to 1, keyword case insensitivity can be selected; otherwise, it cannot. The
default is 0 (cannot be selected).
See Case Sensitivity for more details.
ListAllItemLocks
specifies whether an
item
locks special file created with
MAKE-SPECIAL should
list all item locks or only those that are in contention.
ListAllItemLocks=1
specifies that all locks should be listed.ListAllItemLocks=0
specifies that only locks that are in contention
should be listed.Caution
This parameter should be used with caution, because each time the item locks special file is listed it will activate every port on the system. On systems with large numbers of users, this could adversely affect performance.
You can also select this configuration option by setting the host
environment variable REALLISTALLLOCKS. This overrides any
ListAllItemLocks
settings.
Default: 0 (list only locks that are in contention).
MaxPortNum
defines the maximum number of 'real ports' which may
connect to this database. A 'real port' is one which made its connection to the
host system using the Annex CALL protocol, or which has a dedicated terminal
line. Such ports are always allocated the same UNIX device name or Windows
device id. Reality maps
such device names, in a fixed way, to Reality port numbers.
If set, specifies that a single RELEASE operation will unlock an item that has been locked multiple times.
Note that, unless RosStyleItemLocks has been explicitly cleared, setting this parameter also sets RosStyleItemLocks.
You can also select this configuration option by setting the host environment variable MVSTYLEITEMLOCKS.
NumConnections
defines the maximum number of connections that may be
active on this database at any one time.
NumDataSects
specifies the maximum number of concurrently open data
sections.
Caution
Ensure that NumDataSects
is large enough to
support the total number of files concurrently opened by all applications on the
database. Exceeding the NumDataSects
limit may cause unexpected
results.
Example: NumDataSects=300
Default: 400
NumIndexSects
specifies the maximum number of concurrently open
index sections.
NumItemLocks
defines the maximum number of item locks that can be
held on this database at any one time.
NumPseudoPorts
defines the number of 'pseudo ports' which may
connect to this database. A 'pseudo port' is one which made its connection to
the host dynamically, for instance by using the rlogin or telnet protocols or
via some form of network server. Pseudo ports are also used for TIPHs (terminal
independent process handlers). Pseudo ports are allocated device names
dynamically. Reality maps such device names to the next available pseudo port.
PortRange
specifies whether a
reality process or a
TIPH should be allowed to
log on using one of a range of ports specified in the
devices file with the OPEN and RANGE keywords.
y or Y Allow log on using one of a range of ports.
Any other value Do not allow log on using one of a range of ports.
Default: n
RealDbCk
specifies the action to take at startup if the database was
not shut down properly, as follows:
0 If the database was not shut down cleanly, the connection is rejected and the database is locked. The administrator will need to run realdbck to check and, optionally, clean the database, or the database will need to be rebuilt.
1 If the database was not shut down cleanly, the connection is rejected and realdbck is run automatically to check the database. If no errors are found connections are enabled; otherwise, the database is locked.
2 If the database was not shut down cleanly, the connection is rejected and realdbck is run automatically to check the database. When realdbck completes, connections are enabled, whether or not any errors were found.
Note: If the database check fails, continuing to use the database may result in unrecoverable data corruption.
3 If the database was not shut down cleanly, a message is logged to that effect, but realdbck is not run. The connection is allowed.
Note: If the database was not down cleanly, continuing to use the database may result in unrecoverable data corruption.
Connection is always allowed if the database was shut down cleanly.
Note: While
realdbck is running, all
connections are rejected with the message
<30029>: Database check in progress - please wait (nn%)
.
Default: 0
By default, a despooler checks every 5 seconds to see if there is a job to be printed. This time can be changed by setting this parameter to the required number of seconds.
Note: The REALIDLEDESPOOLERSLEEP environment variable setting overrides this configuration parameter.
Example: RealIdleDespoolerSleep=2
Default: 5
If set, specifies that item locks are replicated if you copy the contents of a file variable to another variable. Note that the resulting locks must be separately released; releasing a lock on one file variable does not release that on the other.
You can also select this configuration option by setting the host environment variable REPLICATEITEMLOCKS.
If set, specifies that item locks should be held separately from any file variable; as a result, closing a file will not release any item locks.
You can also select this configuration option by setting the host environment variable ROSSTYLEITEMLOCKS.
Shared cataloged programs are held in a hashed table, with default modulo
101. To use a different modulo, set ShareModulo = m
, where
m
is the modulo to
use. A larger modulo may be required if an application has a large number of
programs.
ShareSize
defines the number of kilobytes of memory to be allocated for sharing programs.
Default: 256
Remarks: To calculate ShareSize
, use English to determine the total size of
cataloged programs for the application and divide the result by 10.
For example, if all programs were cataloged from account APP, the total size of cataloged programs is found using:
LIST POINTER-FILE WITH PF-TYPE "C" AND WITH PC-ACCT "APP" TOTAL *A9999 DET-SUPP
This gives the maximum size of memory that could ever be shared by cataloged
programs from APP. In practice, the amount of memory required will only be a
fraction of this. It is therefore recommended that, to determine the required
size, you divide the total derived from the LIST calculation by 10 and use this
result as starting point to define ShareSize
.
If the value of ShareSize
is too small, a warning message of the form:
WARNING shmbas: x alloc fails in ys
will be displayed at 3 minute intervals. In which case, increase ShareSize
, until periodic warning messages are stopped.
To disable sharing, set ShareSize
to 0.
shmsz
is no longer a user definable parameter; it is now calculated.
The maximum size in bytes of the Audit and Support logs. When this size is exceeded the logs automatically switch:
Refer to Logging Reports for details of how these items are stored.
If SizeTclLog is set to 0, there is no size limit and the logs do not switch automatically.
See also TimeTclLog.
Default: Maximum user memory (normally 256Mb) – 1024.
SkipLogonProc
specifies whether a
reality process or a
TIPH should be allowed to suppress
running the
logon
control program.
y or Y Allow suppression of the logon control program.
Any other value Do not allow suppression of the logon control program.
Default: n
This is a bit-significant numeric field that controls what appears in Support logs. The bits have the following meanings:
Bit | Decimal value | Function |
---|---|---|
0 | 1 | Log Proc, RPL, SQL and TCL macro commands, and DataBasic performs and executes in addition to TCL commands. |
1 | 2 | Add a time stamp to the log. |
2 | 4 | If set, log times to the nearest millisecond (for example, 10:28:49.483); otherwise, log to the nearest second.
Note: The accuracy of the time is dependent on the
granularity of the underlying operating system time.
|
3 | 8 | Add a date stamp to the log. |
4 | 16 | Add a character to show the context (TCL, Proc, etc.) to each log entry and a key to the context characters used (see TCL.LOG File). |
5 | 32 | Log calls to DataBasic external subroutines and functions (see Note 2). |
6 | 64 | Log returns from DataBasic external subroutines and functions (see Note 2). |
7 | 128 | Add a user-defined attribute, set with the DataBasic SYSTEM(109) or ASSIGN statement, to the log. |
Notes
Default: 17 (00010001); that is:
SuppressPasswordLogging
is set for a FailSafe primary database to disable
the logging and propagation of updated passwords to the secondary system.
Example: SuppressPasswordLogging=1 (Logging Disabled)
Default: Logging and Propagation Enabled
Specifies the location of the database's temporary directory – this is used to hold temporary files used during database operation. For partition databases, it is recommended that the file system containing the temporary directory should have free space about 10% of the size of the database available.
Example: TempDir=/user0/tmp
Default: If TempDir
is not set, the temporary directory is a subdirectory of
the database's top or root directory (see
Database Directory).
The time, in internal format (that is, the number of minutes past midnight), at which the Audit and Support logs automatically switch:
Refer to Logging Reports for details of how these items are stored.
If TimeTclLog is less than 0 or greater than 1439 (23:59), the logs do not switch automatically.
See also SizeTclLog.
Default: -1 (disabled)
Specifies the MultiValue system emulated by the database. This is used in the SYS-LOAD Proc to set the appropriate operating environment.
If set in the master database configuration file, VendorEmulation sets the default value for this mkdbase menu option.
VendorEmulation can be set to the following values:
Value | Emulation |
---|---|
Reality | 0 (Default) |
MVBase | 5 |
mvEnterprise | 6 |
D3 | 33 |
Note: An invalid value will prevent you using mkdbase.
You can find out the current setting from DataBasic or Proc with the SYSTEM(102) function.