Nonstop Database, HiRDB Version 9 System Definition

[Contents][Index][Back][Next]

1.5.1 Changes in HiRDB system definitions depending on the version and revision

For version 09-50, the default values of HiRDB system definitions were reviewed, some default values were changed, and the number of operands that need to be specified was greatly reduced. With these improvements, you can now create a more secure system. This section lists the operands whose default value was changed, describes the operand for which the range of specifiable values was changed, and lists the operands that no longer need to be specified since version 09-50.

If you upgrade HiRDB from a version earlier than 09-50, check the advantages and disadvantages resulting from the changes in the default values. After checking them, if you think that compatibility with earlier versions is more important, apply the compatibility mode in which default values equivalent to those in earlier versions are used. In this case, if there are any operands for which you can specify the recommended value, consider specifying the recommended value for them individually.

For details about the procedure and notes related to version upgrades, see Upgrading HiRDB in the HiRDB Version 9 Installation and Design Guide.

Organization of this subsection
(1) Operands whose default value depends on the version and revision
(2) Operands for which the permitted range of specifiable values depends on the version and revision
(3) Operands that no longer need to be specified

(1) Operands whose default value depends on the version and revision

The table below lists and describes the operands whose default values depend on the version and revision.

Note
When an operand shown in boldface type is omitted, if you do not apply recommended mode when upgrading HiRDB or do not perform operations (such as re-creating HiRDB files) that are described as disadvantages, HiRDB might not be able to start. Check the advantages and disadvantages resulting from the changes in the default value, and then determine the operation mode when the operand is omitted.

Table 1-8 Operands whose default value depends on the version and revision

Operand name Default value in 09-50 and later versions
(when recommended mode is applied)
Default value when 0904 compatibility mode is applied Default value in versions from 08-00 to earlier than 09-50 Advantages resulting from the change in the default value Disadvantages resulting from the change in the default value
pd_log_rec_leng 1024 [Figure] 4096 The storage efficiency of system log files is improved. System log files must be re-created because the record length of the files has changed.
pd_lck_until_disconnect_cnt Dictionary server:
256
Servers other than the above server:
10000
[Figure] 256
  • This operand does not need to be specified because the default value for the number of concurrent executions of utilities has increased.#7
  • This operand does not need to be specified because the default value for the number of RDAREAs used by utilities has increased.#7

  • Synchronization point dump files must be re-created because the size of the files has increased.
  • The size of shared memory must be re-estimated because the size has increased.#12
pd_max_file_no 2000 [Figure] 400 This operand does not need to be specified because the default value for the number of HiRDB files has increased.#5
  • Status files must be re-created because the size of the files has increased.
  • The size of process private memory must be re-estimated because the size has increased.
  • The size of shared memory must be re-estimated because the size has increased.#12
pd_max_rdarea_no 1000 [Figure] 200 This operand does not need to be specified because the default value for the number of RDAREAs has increased.#5
  • Status files must be re-created because the size of the files has increased.
  • The size of process private memory must be re-estimated because the size has increased.
  • The size of shared memory must be re-estimated because the size has increased.#12
pd_max_add_dbbuff_shm_no 32-bit mode:
500 + (512 - a)
64-bit mode:
1000 + (512 - a)
32-bit mode:
500 + (512 - a)
64-bit mode:
1000 + (512 - a)
32-bit mode:
500 + (16 - a)
64-bit mode:
1000 + (16 - a)
If the pdbufmod command is used in operation, this operand does not need to be specified because the maximum number of shared memory segments to be added dynamically has increased. When the pdbufmod command is used in operation:
  • Status files must be re-created because the size of the files has increased.
  • The size of shared memory must be re-estimated because the size has increased.#12
pd_utl_exec_mode 1 [Figure] 0 This operand does not need to be specified because the maximum number of concurrent executions of utilities is specified so that increases in the number are permitted.
  • The maximum number of concurrent executions of utilities must be re-evaluated.#10
  • The size of shared memory must be re-estimated because the size has increased.#12
pd_additional_optimize_level "COST_BASE_2",
"APPLY_JOIN_COND_FOR_VALUE_EXP",
"APPLY_SRCH_COND_FOR_VALUE_EXP",
"MERGE_FROM_DERIVED_TABLE",
"CONVERT_OUTER_INNER_JOIN"
[Figure] "COST_BASE_2" SQL execution performance is improved because the access path has changed. Indexes and SQL statements must be reviewed because the access path has changed.#6
pd_optimize_level HiRDB single server configuration:
"PRIOR_NEST_JOIN",
"PRIOR_OR_INDEXES",
"DETER_AND_INDEXES",
"RAPID_GROUPING",
"DETER_WORK_TABLE_FOR_UPDATE",
"APPLY_ENHANCED_KEY_COND",
"MOVE_UP_DERIVED_COND"
HiRDB parallel server configuration:
"PRIOR_NEST_JOIN",
"PRIOR_OR_INDEXES",
"SORT_DATA_BES",
"DETER_AND_INDEXES",
"RAPID_GROUPING",
"DETER_WORK_TABLE_FOR_UPDATE",
"APPLY_ENHANCED_KEY_COND",
"MOVE_UP_DERIVED_COND",
"FLTS_ONLY_DATA_BES"
[Figure] HiRDB single server configuration:
"PRIOR_NEST_JOIN",
"PRIOR_OR_INDEXES",
"DETER_AND_INDEXES",
"RAPID_GROUPING",
"DETER_WORK_TABLE_FOR_UPDATE",
"APPLY_ENHANCED_KEY_COND"
HiRDB parallel server configuration:
"PRIOR_NEST_JOIN",
"PRIOR_OR_INDEXES",
"SORT_DATA_BES",
"DETER_AND_INDEXES",
"RAPID_GROUPING",
"DETER_WORK_TABLE_FOR_UPDATE",
"APPLY_ENHANCED_KEY_COND"
SQL execution performance is improved because the access path has changed. Indexes and SQL statements must be reviewed because the access path has changed.#6
pd_apply_search_ats_num 30000 [Figure] 255 SQL execution performance is improved because the access path has changed. The SQL object cache size must be re-estimated.
pd_hashjoin_hashing_mode TYPE2 [Figure] TYPE1 SQL execution performance is improved because the access path has changed. The hash table size must be re-estimated.
pd_sql_dec_op_maxprec 38 [Figure] 29 The precision of the operation result is improved. When a DECIMAL type operation is included:
  • Table definitions including viewed tables, triggers, routines, and check constraints must be re-created.
  • Applications must be modified.
pd_leap_second Y [Figure] N This operand does not need to be specified when leap seconds are used. Applications must be modified due to the change in the range of time values.
pd_standard_sqlstate Y [Figure] N The cause of an error can be identified easily because detailed SQLSTATE values are output. Applications must be modified because the SQLSTATE values have changed.
pd_trn_rcvmsg_store_buflen 8192 [Figure] 4096 Stable performance is ensured during the recovery of transactions.
  • The operating system parameters must be re-estimated because the number of processes has increased.
  • The size of shared memory must be re-estimated because the size has increased.#12
pd_assurance_index_no 2500 [Figure] 500 This operand does not need to be specified because the default value for the number of indexes has increased.#5 The size of shared memory must be re-estimated because the size has increased.#12
pd_auth_cache_size 10 [Figure] 1 This operand does not need to be specified because the default value for the size of the user privilege information buffer has increased.#5 The size of shared memory must be re-estimated because the size has increased.#12
pd_lck_pool_size 32-bit mode:
16000
64-bit mode:
128000
[Figure] 32-bit mode:
16000
64-bit mode:
32000

  • This operand does not need to be specified because the default value for the number of locked resource requests during execution of transactions has increased.#8
  • This operand does not need to be specified because the default value for the number of concurrent executions of transactions has increased.#8
The size of shared memory must be re-estimated because the size has increased.#12
pd_max_temporary_object_no 600 [Figure] 0 This operand does not need to be specified because the default value for the number of indexes that can be used in temporary tables has increased.#9 The size of shared memory must be re-estimated because the size has increased.#12
pd_routine_def_cache_size 300 [Figure] 100 Stable performance is ensured because the default value for the size of the routine definition information buffer has increased.#5 The size of shared memory must be re-estimated because the size has increased.#12
pd_sql_object_cache_size 32-bit mode:
(value of pd_max_users + 3#11) [Figure] 22 kilobytes
64-bit mode:
(value of pd_max_users + 3#11) [Figure] 40 kilobytes
[Figure] (value of pd_max_users + 3#11) [Figure] 22 kilobytes Stable performance is ensured because the default value for the size of the buffer for storing SQL objects has increased. The size of shared memory must be re-estimated because the size has increased.#12
pd_table_def_cache_size 32-bit mode:
[Figure]
64-bit mode:
16000
[Figure] [Figure] Stable performance is ensured because the default value for the size of the buffer for storing table definition information has increased.#5 The size of shared memory must be re-estimated because the size has increased.#12
pd_view_def_cache_size 32-bit mode:
[Figure]
64-bit mode:
30000
[Figure] [Figure] Stable performance is ensured because the default value for the size of the buffer for storing table definition information has increased.#5 The size of shared memory must be re-estimated because the size has increased.#12
pd_log_max_data_size#1 523000 [Figure] 400000 Stable performance is ensured because the default value for the size of the buffer to be used for system log input/output operations has increased. The size of shared memory must be re-estimated because the size has increased.#12
pd_log_rollback_buff_count 0 [Figure] Omitted The time required for rollback is shortened because the default value for the number of buffer sectors to be used during rollback processing has increased. The size of shared memory must be re-estimated because the size has increased.#12
pd_max_tmp_table_rdarea_no min (131088, pd_max_rdarea_no-3) [Figure] 0 This operand does not need to be specified when a temporary table is used. The size of shared memory must be re-estimated because the size has increased.#12
pd_uap_exerror_log_use AUTO AUTO NO The locations of errors are easily identified.
  • The size of shared memory must be re-estimated because the size has increased.#12
  • The amount of disk required for directories has increased.
pd_uap_exerror_log_dir $PDDIR/spool/pduaperr $PDDIR/spool/pduaperr None
pd_uap_exerror_log_size 10000000 10000000 1000000
pd_cwaittime_wrn_pnt 1800sec,auto 1800sec,auto 0 Errors can be found at an early stage through an SQL runtime warning.
  • Monitoring of messages must be considered because a warning message (KFPA20009-W) has been added.
  • The amount of disk required for directories has increased.
pd_cwaittime_report_size 10000000 10000000 100000
pd_cwaittime_report_dir $PDDIR/spool/pdcwwrn $PDDIR/spool/pdcwwrn None
pd_mlg_file_size 10240 10240 1024 Troubleshooting information is enhanced because the size of the message log file has increased. The amount of disk required for directories has increased.
pd_statistics A [Figure] N Troubleshooting information is enhanced because statistical information is obtained. The amount of disk required for directories has increased.
pd_stj_file_size 102400 [Figure] 1024
pd_watch_resource DEFAULT [Figure] MANUAL The system operating status can be obtained. Monitoring of messages must be considered because warning messages (KFPS05123-W and KFPH22023-W) have been added.
pd_sts_initial_error#2 excontinue [Figure] stop The effects of an error can be localized. Operations must be changed when an error occurs in one of the files.
pd_syssts_initial_error#3 excontinue [Figure] stop The effects of an error can be localized. Operations must be changed when an error occurs in one of the files.
pd_rdarea_extension_timing use [Figure] nouse Operations can continue even if an error occurs during an automatic extension because the timing for performing automatic extension of the RDAREA has changed. HiRDB file system areas must be re-estimated because the timing for performing automatic extensions of the RDAREA has changed.
pd_registered_port_level 1 [Figure] 0 The number of automatically assigned ports to be used when the HiRDB reserved port facility is used can be reduced. The range of ports to be reserved when the HiRDB reserved port facility is used must be changed.
pd_dbsync_altwrite_skip Y [Figure] N Stable performance for referencing transactions is ensured. None
pd_deter_restart_on_stop_fail Y Y N Switchovers are suppressed when an abnormal termination occurs during forced stop processing. None
pd_ipc_tcp_nodelayack Y Y N Stable communication performance is ensured because immediate acknowledgment is applied. None
pd_max_dbbuff_shm_no (this operand is applicable only to 32-bit versions of Windows.) 512 512 16 The number of shared memory segments for global buffers does not need to be specified. None
pd_inet_unix_bufmode#4 os [Figure] In Linux and Solaris:
os
In AIX and HP-UX:
conf
Stable communication performance is ensured because the size of communication buffers has increased. None
pd_sql_simple_comment_use Y [Figure] N This operand does not need to be specified when simple comments are used. SQL statements must be reviewed because the handling of two hyphens (--) in SQL statements, and the handling of control characters (including line feed characters) have changed.
pd_trn_rollback_msg_interval 5 [Figure] 60 The message output interval is shortened. None
pd_module_trace_max 256 256 126 Troubleshooting information is enhanced because the number of module traces that can be stored has increased. The size of process private memory must be re-estimated because the size has increased.
pd_utl_file_buff_size 1024 1024 32 Utility execution performance is improved because the input/output buffer size has increased. None
SHMMAX 32-bit mode:
100
64-bit mode:
1024
32-bit mode:
100
64-bit mode:
1024
32-bit mode:
200
64-bit mode:
1024
Stable system operation is ensured by efficient use of memory. None

Legend
[Figure]:
The default value is the same as that for versions from 08-00 to earlier than 09-50.
a:
Number of shared memory segments allocated per server during HiRDB startup. You can use the pdls -d mem command or an OS command to obtain information about shared memory segments.
b:
This value is 16.

#1
If recommended mode is applied and the value of the pd_log_max_data_size operand is less than 523000, the pdconfchk command outputs a warning message (KFPS05632-W).

#2
The pd_sts_initial_error operand is related to the pd_sts_singleoperation operand. When evaluating the value to be specified in the pd_sts_initial_error operand, also consider the value to be specified in the pd_sts_singleoperation operand.

#3
The pd_syssts_initial_error operand is related to the pd_syssts_singleoperation operand. When evaluating the value to be specified in the pd_syssts_initial_error operand, also consider the value to be specified in the pd_syssts_singleoperation operand.

#4
The pd_inet_unix_bufmode operand is related to the operands listed below. When evaluating the value to be specified in the pd_inet_unix_bufmode operand, also consider the values to be specified in these operands.
  • pd_inet_unix_utl_bufmode
  • pd_ipc_inet_bufsize
  • pd_ipc_unix_bufsize
  • pd_listen_socket_bufset
  • pd_tcp_inet_bufsize
  • pd_tcp_unix_bufsize
  • pd_utl_buff_size

#5
If the size of the database exceeds the database size described in 1.6 Database sizes that can be defined by default values, you might need to specify the operand.

#6
For details, see Concept of tuning in Access Path Display Utility (pdvwopt) in the manual HiRDB Version 9 Command Reference.

#7
If the number of utilities or the number of RDAREAs used by utilities exceeds the default value for the pd_lck_until_disconnect_cnt operand, you need to specify the pd_lck_until_disconnect_cnt operand. For details, see C.5 Formula for determining total number of tables and RDAREAs per server locked with UNTIL DISCONNECT specified (pd_lck_until_disconnect_cnt).

#8
If the size of lock pool to be used exceeds the default value for the pd_lck_pool_size operand, you need to specify the pd_lck_pool_size operand. For details, see D Determining the Number of Locked Resources.

#9
If the number of indexes used in temporary tables exceeds 600, specify this operand.

#10
If the value specified in the pd_max_users operand is less than 32, and multiple instances of the database recovery utility (pdrstr) or the database copy utility (pdcopy) are executed concurrently, you need to reduce the maximum number of concurrent executions of utilities. For details, see the maximum number of copies that can be executed concurrently for the database recovery utility (pdrstr) or the database copy utility (pdcopy) described in Maximum Number of Concurrently Executable Utilities in the manual HiRDB Version 9 Command Reference.

#11
If the system has multiple front-end servers, this value is 4.

#12
If the size of shared memory is increased, the number of page fault occurrences increases, and transaction performance might be affected. See the specification guidelines for each operand, and consider specifying an appropriate value for the system.

(2) Operands for which the permitted range of specifiable values depends on the version and revision

The table below lists and describes the operands for which the permitted range of specifiable values varies depending on the version and revision. Even if you specify a value within the permitted range for versions earlier than 09-50 in version 09-50 or later, HiRDB will run by using that value, but consider specifying a value in the permitted range for 09-50 and later versions.

Table 1-9 Operands for which the permitted range of specifiable values depends on the version and revision

Operand name Permitted range in 09-50 and later versions Permitted range in versions earlier than 09-50 Advantages resulting from changing the permitted range Disadvantages resulting from changing the permitted range
pd_log_write_buff_count# 10 to 65000 <<10>> 3 to 65000 <<10>> Stable performance is ensured because the number of log buffer sectors that can be used when the default value is specified has increased. The formula for calculating the memory size must be re-estimated because the size of shared memory increases.

#
If recommended mode is applied and the value specified in the pd_log_write_buff_count operand is less than 10, when you execute the pdconfchk command, a warning message (KFPS05632-W) is output.

(3) Operands that no longer need to be specified

The table below lists and describes the operands that no longer need to be specified because you need to specify only the default value for operands and the operands that we recommend you change (when a value other than the default value is specified for the operand). These operands do not cause an error even if you leave them specified or if you specify a value other than the default value, but consider omitting the operands or specifying the default value.

If recommended mode is applied, consider omitting all of the operands shown below.

When the compatibility mode is applied, if the default value of the operand used in version 09-50 is different from that used when 0904 compatibility mode is applied, consider explicitly specifying the default value used in version 09-50. For details about operands, see 10. Operands that Must Be Examined If Compatibility Mode Is To Be Applied. If the default value of the operand used in version 09-50 is the same as that used when 0904 compatibility mode is applied, consider omitting the operand.

For details about the advantages and disadvantages of changing the specification value, see Table 1-8 Operands whose default value depends on the version and revision.

Note
When an operand shown in boldface type is omitted, if you do not apply recommended mode when upgrading HiRDB or do not perform operations (such as re-creating HiRDB files) that are described as disadvantages, HiRDB might not be able to start.

Table 1-10 Operands that no longer need to be specified

Operand name Default value in version 09-50 (when recommended mode is applied) Default value when 0904 compatibility mode is applied Is the explanation of the operand provided?
pd_log_rec_leng 1024 4096 Y
pd_sysdef_default_option#1 [Figure] recommendable --
pd_large_file_use#2, #3 [Figure] Y --
pd_apply_search_ats_num 30000 255 Y
pd_hashjoin_hashing_mode TYPE2 TYPE1 Y
pd_leap_second Y N Y
pd_dbsync_altwrite_skip Y N Y
pd_sts_initial_error excontinue stop Y
pd_sts_singleoperation stop stop Y
pd_syssts_initial_error excontinue stop Y
pd_syssts_singleoperation stop stop Y
pd_registered_port_level 1 0 Y
pd_log_max_data_size#1 523000 400000 Y
pd_log_rollback_buff_count 0 Omitted Y
pd_max_tmp_table_rdarea_no min (131088, pd_max_rdarea_no-3) 0 Y
pd_inet_unix_bufmode#4 os For Linux and Solaris:
os
For AIX and HP-UX:
conf
Y
pd_sql_simple_comment_use Y N Y
pd_trn_rollback_msg_interval 5 60 Y
pd_utl_exec_mode 1 0 Y
pd_watch_time#5 [Figure] 0 --
pd_dbbuff_lock_interval [Figure] 1 --
pd_dbbuff_lock_release_detect [Figure] pipe --
pd_dbbuff_lock_spn_count [Figure] 100 --
pd_dbbuff_wait_interval [Figure] None --
pd_dbbuff_wait_spn_count [Figure] 0 --
pd_dbsync_lck_release_count [Figure] 10000 --
pd_deter_restart_on_stop_fail [Figure] Y --
pd_ipc_tcp_nodelayack [Figure] Y --
pd_lck_release_detect [Figure] pipe --
pd_lck_release_detect_interval [Figure] 10 --
pd_max_commit_write_reclaim_no [Figure] 10 --
pd_sql_send_buff_size [Figure] 4 --
pd_server_entry_queue [Figure] spnfifo --
pd_thdlock_pipe_retry_interval [Figure] 1000000 --
pd_thdlock_retry_time [Figure] 1000 --
pd_thdlock_sleep_func [Figure] 0 --
pd_thdlock_wakeup_lock#6 [Figure] N --
pd_thdspnlk_spn_count [Figure] 512 --
pd_utl_file_buff_size 1024 1024 --

Legend:
[Figure]:
Default value when 0904 compatibility mode is applied.
Y:
The definition of the operand is provided in 10. Operands that Must Be Examined If Compatibility Mode Is To Be Applied.
--:
No explanation is provided on the operand.

#1
You cannot specify the pd_sysdef_default_option operand. If you do so, an error might occur. If the pd_sysdef_default_option operand has been specified, omit it, and consider specifying the recommended values for individual operands by referring to 1.5.2 Changes in HiRDB system definitions in versions earlier than 09-50.

#2
Changing the value of the pd_large_file_use operand from N to Y increases the size of shared memory. Re-estimate the formula for calculating memory size.

#3
If you execute the pdconfchk command while the value of the pd_large_file_use operand is N, a warning message (KFPS05632-W) is output.

#4
The pd_inet_unix_bufmode operand is related to the operands listed below. If you consider the value to be specified for the pd_inet_unix_bufmode operand, also consider the values for the following operands:
  • pd_inet_unix_utl_bufmode
  • pd_ipc_inet_bufsize
  • pd_ipc_unix_bufsize
  • pd_listen_socket_bufset
  • pd_tcp_inet_bufsize
  • pd_tcp_unix_bufsize
  • pd_utl_buff_size

#5
If a value other than 0 is specified for the pd_watch_time operand, perform all of the following actions:
  1. Omit the pd_watch_time operand.
  2. Specify the following operands to monitor the execution time of SQL statements, commands, and utilities:
    - Client environment definition PDCWAITTIME
    - System definition pd_cmd_exec_time
    For details about the values to be specified for the PDCWAITTIME operand, see the HiRDB Version 9 UAP Development Guide. For details about the values to be specified for the pd_cmd_exec_time operand, see pd_cmd_exec_time.
  3. If a value greater than 180 is specified for the pd_watch_time operand and the pd_lck_wait_time operand is omitted, specify the value of the pd_watch_time operand for the pd_lck_wait_time operand.

#6
Specification of this operand is only not required when using Linux. It can be specified in AIX and HP-UX.