RDOHELP72.HLB  —  DEFINE_DATABASE, Format  db-wide-options-2
  (B)0db-wide-options-2 =

  qwq> BUFFER SIZE IS qqqqq> buffer-blocks qq> BLOCKS qqqqqqwq>
   tq> ADJUSTABLE LOCK GRANULARITY IS qwqqq> ENABLED qqqwqqqu
   x                                   mqqq> DISABLED qqj   x
   tq> SNAPSHOT IS qqqqwqqqqq> ENABLED qwqq> IMMEDIATE qwqwqu
   x                   x                mqq> DEFERRED qqj x x
   x                   mqqqqq> DISABLED qqqqqqqqqqq>qqqqqqj x
   tq> DICTIONARY IS qqqwqqq> REQUIRED qqqqqqqwqqqqqqqqqqqqqu
   x                    tqqq> NOT REQUIRED qqqu             x
   x                    tqqq> USED qqqqqqqqqqqu             x
   x                    mqqq> NOT USED qqqqqqqj             x
   tq> CARRY OVER LOCKS ARE qqwq> ENABLED qwqqqqqqqqqqqqqqqqu
   x                          mq> DISABLED j                x
   mq> LOCK TIMEOUT INTERVAL IS number-seconds SECONDS qqqqqj

1  –  buffer-blocks

    The number of blocks Oracle Rdb allocates per buffer. Specify an
    unsigned integer greater than zero. If you do not specify this
    parameter, Oracle Rdb uses a buffer size that is three times the
    PAGE SIZE value.

    Buffer size is a global parameter and the number of blocks per
    page (or buffer) is constrained to less than 64 blocks per page.
    The page size can vary by storage area for multifile databases,
    so you should determine the page size of each storage area based
    on the sizes of records that will be stored in each storage area.

    When you choose the number of blocks per buffer, choose a number
    that is wholly divisible by all page sizes for all storage
    areas in your multifile database. For example, if your database
    has three storage areas with page sizes of 2, 3, and 4 blocks
    respectively, choosing a buffer size of 12 blocks will ensure
    optimal buffer utilization. If you choose a buffer size of 8, the
    storage area with a page size of 3 blocks will waste 2 blocks per
    buffer. Oracle Rdb reads as many pages as will fit into the buffer.
    In this case, Oracle Rdb reads two pages of 3 blocks apiece into the
    buffer, wasting 2 blocks.

2  –  ADJUSTABLE_LOCK

    Enables or disables whether or not the database system will
    automatically maintain as few locks as possible on database
    resources. The default is ENABLED, and results in fewer locks
    against the database. However, if contention for database
    resources is high, the automatic adjustment of locks can become a
    CPU drain. Such databases can trade more restrictive locking for
    less CPU usage by disabling adjustable lock granularity.

    Disabling adjustable locking granularity may require that the
    LOCKIDTBL, LOCKIDTBL_MAX, PQL_DENQLM, PQL_MENQLM OpenVMS SYSGEN
    parameters for locks be increased.

3  –  ENABLED-IMMEDIATE

    The default, ENABLED IMMEDIATE causes read/write transactions
    to write copies of records to the the snapshot file before
    those records are modified, regardless of whether a read-only
    transaction is active.

    If you use the SNAPSHOT IS ENABLED clause to enable snapshots
    on a multifile database, writing to all snapshot files for all
    storage areas is enabled.

4  –  ENABLED-DEFERRED

    Specifies that read/write transactions not write copies of
    records they modify to the snapshot file unless a read-only
    transaction is active. Read-only transactions that attempt to
    start after an active read/write transaction begins must wait for
    all active read/write users to complete their transactions.

    If you use the SNAPSHOT IS ENABLED clause to enable snapshots
    on a multifile database, writing to all snapshot files for all
    storage areas is enabled.

5  –  DISABLED

    Disables snapshot transactions. If you use the SNAPSHOT IS
    DISABLED clause to disable snapshots on a multifile database,
    writing to all snapshot files for all storage areas is disabled.

6  –  DICTIONARY

    The DICTIONARY IS [NOT] REQUIRED clause determines whether the
    database must be invoked by path name for data definition changes
    to occur. If you specify the DICTIONARY IS REQUIRED option,
    the database must be invoked by path name to change metadata
    and the data dictionary will be maintained. If you specify the
    DICTIONARY IS NOT REQUIRED option, the database can be invoked by
    either file name or path name to change metadata. The default is
    DICTIONARY IS NOT REQUIRED.

    The DICTIONARY IS [NOT] USED clause determines whether the
    definition of the database and definitions of database elements
    will be stored in the data dictionary. If you specify the
    DICTIONARY IS USED option, the definition of the database and
    definitions of database elements will be stored in the data
    dictionary. If you specify the DICTIONARY IS NOT USED option,
    no definitions will be stored in the data dictionary. The default
    is DICTIONARY IS USED.

    You receive an error message if you specify incompatible options,
    such as the DICTIONARY IS REQUIRED option and the DICTIONARY IS
    NOT USED option.

7  –  CARRY_OVER_LOCKS

    The carry-over locks option is a database-wide parameter
    that allows you to disable carry-over lock optimization. This
    optimization is enabled by default. Although this is an advantage
    in more environments, it can result in false lock conflicts in
    some applications.

    The carry-over locks optimization holds area and record locks
    across transactions and depends on NOWAIT transactions asking for
    and acquiring the NOWAIT lock. This can result in long delays if
    concurrent users are executing long verbs. You should consider
    disabling the carry-over locks optimization if transactions
    experience noticeable delays in acquiring the NOWAIT lock (as
    seen in the output of the RMU/SHOW STATISTICS command). Note that
    if you do disable the carry-over locks option, there may be some
    performance degradation because transactions will acquire and
    release area and top level ALG locks for every transaction.

8  –  LOCK_TIMEOUT

    Specifies the number of seconds for processes to wait during a
    lock conflict before timing out. The number of seconds can be
    between one and 65,000.

    Sets the default database lock timeout interval. This is the
    database wide timeout interval. It is used as the default as well
    as the upper limit in determining the timeout interval to use.
    For example, if LOCK TIMEOUT INTERVAL IS 25 SECONDS is specified
    with the CHANGE DATABASE or DEFINE DATABASE statement, and a
    user specifies 30 seconds with the SQL SET TRANSACTION WAIT 30
    statement or sets the logical name RDM$BIND_LOCK_TIMEOUT_INTERVAL
    to 30, RDO would still use the interval of 25 specified with the
    LOCK TIMEOUT INTERVAL clause.
Close Help