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 nameDefault value in 09-50 and later versions
(when recommended mode is applied)
Default value when 0904 compatibility mode is appliedDefault value in versions from 08-00 to earlier than 09-50Advantages resulting from the change in the default valueDisadvantages resulting from the change in the default value
pd_log_rec_leng1024[Figure]4096The 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_cntDictionary 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_no2000[Figure]400This 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_no1000[Figure]200This 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_no32-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_mode1[Figure]0This 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_levelHiRDB 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_num30000[Figure]255SQL execution performance is improved because the access path has changed.The SQL object cache size must be re-estimated.
pd_hashjoin_hashing_modeTYPE2[Figure]TYPE1SQL execution performance is improved because the access path has changed.The hash table size must be re-estimated.
pd_sql_dec_op_maxprec38[Figure]29The 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_secondY[Figure]NThis 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_sqlstateY[Figure]NThe 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_buflen8192[Figure]4096Stable 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_no2500[Figure]500This operand does not need to be specified because the default value for the number of indexes has increased.#5The size of shared memory must be re-estimated because the size has increased.#12
pd_auth_cache_size10[Figure]1This operand does not need to be specified because the default value for the size of the user privilege information buffer has increased.#5The size of shared memory must be re-estimated because the size has increased.#12
pd_lck_pool_size32-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_no600[Figure]0This 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.#9The size of shared memory must be re-estimated because the size has increased.#12
pd_routine_def_cache_size300[Figure]100Stable performance is ensured because the default value for the size of the routine definition information buffer has increased.#5The size of shared memory must be re-estimated because the size has increased.#12
pd_sql_object_cache_size32-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 kilobytesStable 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_size32-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.#5The size of shared memory must be re-estimated because the size has increased.#12
pd_view_def_cache_size32-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.#5The size of shared memory must be re-estimated because the size has increased.#12
pd_log_max_data_size#1523000[Figure]400000Stable 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_count0[Figure]OmittedThe 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_nomin (131088, pd_max_rdarea_no-3)[Figure]0This 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_useAUTOAUTONOThe 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/pduaperrNone
pd_uap_exerror_log_size10000000​10000000​1000000​
pd_cwaittime_wrn_pnt1800sec,auto1800sec,auto0Errors 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_size10000000​10000000​100000
pd_cwaittime_report_dir$PDDIR/spool/pdcwwrn$PDDIR/spool/pdcwwrnNone
pd_mlg_file_size10240102401024Troubleshooting information is enhanced because the size of the message log file has increased.The amount of disk required for directories has increased.
pd_statisticsA[Figure]NTroubleshooting information is enhanced because statistical information is obtained.The amount of disk required for directories has increased.
pd_stj_file_size102400[Figure]1024
pd_watch_resourceDEFAULT[Figure]MANUALThe 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#2excontinue[Figure]stopThe effects of an error can be localized.Operations must be changed when an error occurs in one of the files.
pd_syssts_initial_error#3excontinue[Figure]stopThe effects of an error can be localized.Operations must be changed when an error occurs in one of the files.
pd_rdarea_extension_timinguse[Figure]nouseOperations 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_level1[Figure]0The 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_skipY[Figure]NStable performance for referencing transactions is ensured.None
pd_deter_restart_on_stop_failYYNSwitchovers are suppressed when an abnormal termination occurs during forced stop processing.None
pd_ipc_tcp_nodelayackYYNStable 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.)51251216The number of shared memory segments for global buffers does not need to be specified.None
pd_inet_unix_bufmode#4os[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_useY[Figure]NThis 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_interval5[Figure]60The message output interval is shortened.None
pd_module_trace_max256256126Troubleshooting 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_size1024102432Utility execution performance is improved because the input/output buffer size has increased.None
SHMMAX32-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 namePermitted range in 09-50 and later versionsPermitted range in versions earlier than 09-50Advantages resulting from changing the permitted rangeDisadvantages 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 nameDefault value in version 09-50 (when recommended mode is applied)Default value when 0904 compatibility mode is appliedIs the explanation of the operand provided?
pd_log_rec_leng10244096Y
pd_sysdef_default_option#1[Figure]recommendable--
pd_large_file_use#2, #3[Figure]Y--
pd_apply_search_ats_num30000255Y
pd_hashjoin_hashing_modeTYPE2TYPE1Y
pd_leap_secondYNY
pd_dbsync_altwrite_skipYNY
pd_sts_initial_errorexcontinuestopY
pd_sts_singleoperationstopstopY
pd_syssts_initial_errorexcontinuestopY
pd_syssts_singleoperationstopstopY
pd_registered_port_level10Y
pd_log_max_data_size#1523000400000Y
pd_log_rollback_buff_count0OmittedY
pd_max_tmp_table_rdarea_nomin (131088, pd_max_rdarea_no-3)0Y
pd_inet_unix_bufmode#4osFor Linux and Solaris:
os
For AIX and HP-UX:
conf
Y
pd_sql_simple_comment_useYNY
pd_trn_rollback_msg_interval560Y
pd_utl_exec_mode10Y
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_size10241024--
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.