2.2.5 Operands related to HiRDB processing

15) pd_dbsync_point = sync | commit
Specifies the timing for committing database updates to the file.
sync:
Commit database updates to the file at each synchronization point. This option enhances performance when a large number of transactions that update the same page occur between synchronization points. Because update information is not committed to the file when a COMMIT statement is issued, the input/output workload is reduced. Note that full recovery processing is slower than when commit is specified.
commit:
Commit database updates to the file when a COMMIT statement is issued. Because the database contents are guaranteed when the transaction is completed, there is no need to recover transaction processing from a synchronization point, thus reducing the time required for a full recovery. However, if a large number of transactions that update the same page occur between synchronization points, this option is slower than when the sync option is specified.
Remarks
A LOB RDAREA is not affected by this operand. Directories are updated when the COMMIT statement is issued. Whether data is updated depends on whether a LOB global buffer has been allocated. If no LOB global buffer has been allocated, data is instantly updated when an update request is issued. If a LOB global buffer has been allocated, data is updated when the COMMIT statement is issued. However, if the global buffer becomes full, data is updated at that time.
Relationship to other operands
This operand is related to the pd_system_dbsync_point operand.
Effects on individual estimation formulas
If the value of the pd_dbsync_point operand is changed, the following estimation formulas are affected:
HiRDB Version 9 Installation and Design Guide:
  • Calculation of required memory under Estimating the memory size required for a HiRDB/Single Server
  • Calculation of required memory under Estimating the memory size required for a HiRDB/Parallel Server
  • Formulas for shared memory used by a single server
  • Formulas for the size of the shared memory used by a dictionary server
  • Formulas for the size of the shared memory used by a back-end server
16) pd_system_dbsync_point = sync | commit
Specifies the timing for committing to file updates in the following types of RDAREAs:
  • Master directory RDAREA
  • Data directory RDAREA
  • Data dictionary RDAREAs
  • Data dictionary LOB RDAREAs
  • Registry RDAREAs
  • Registry LOB RDAREAs
sync:
Commit RDAREA updates to the file at each synchronization point. Because update information is not committed to the file when a COMMIT statement is issued, the processing performance of a definition SQL is slightly better than when the commit option is specified. However, full recovery processing is slower than when the commit option is specified.
commit:
Commit to file updates to the indicated types of RDAREAs when a COMMIT statement is issued. Because the contents of updates to the indicated types of RDAREAs are guaranteed when the transaction is completed, there is no need to recover these types of RDAREAs from a synchronization point, thus reducing the time required for a full recovery. However, the processing performance of a definition SQL is slightly lower than when sync is specified.
Relationship to other operands
This operand is related to the pd_dbsync_point operand. The following table shows the relationship to the pd_dbsync_point operand:
pd_dbsync_point specificationpd_system_dbsync_point specification
synccommit (default)
sync (default)Commits updates to all RDAREAs at a synchronization point.Commits updates to the indicated types of RDAREAs when a COMMIT statement is issued. Commits updates to other types of RDAREAs at a synchronization point.
commitCommits updates to all RDAREAs when a COMMIT statement is issued.
Effects on individual estimation formulas
If the value of the pd_system_dbsync_point operand is changed, the following estimation formulas are affected:
HiRDB Version 9 Installation and Design Guide:
  • Formulas for shared memory used by a single server
  • Formulas for the size of the shared memory used by a dictionary server
17) pd_dbsync_altwrite_skip = Y | N
Specifies the handling of write processing when an update buffer reference request is issued during synchronization point acquisition processing. Normally, such write processing of the update buffer contents into the database is handled by the server process that will execute the transaction that issues the reference request. This operand specifies whether the handling of this write processing is to be skipped.
The following compares the values of this operand.
Comparison itempd_dbsync_altwrite_skip operand value
YN (default value)
Database writing method when an update buffer reference request is issued during synchronization point acquisition processingThe server process that will execute the transaction that issues the reference request does not handle writing of the update buffer contents into the database. (The handling is skipped.)The server process that will execute the transaction that issues the reference request handles writing of the update buffer contents into the database. (The handling is not skipped.)
AdvantageBecause the server process that will execute the transaction does not handle the write processing, the performance of the referencing transaction is stable during synchronization point acquisition processing.The amount of time required for synchronization point acquisition processing is reduced because some of the workload is distributed to the referencing transaction.
DisadvantageThe amount of time required for synchronization point acquisition processing increases because none of the workload is distributed to the referencing transaction.There might be adverse effects on the referencing transaction during synchronization point acquisition processing.
Specification guidelines
You can execute the statistics analysis utility to obtain statistical information on the global buffer pool in order to check the database write processing take-over count (ALTRW) due to reference request hits during synchronization point processing. If this value is large, performance of a referencing transaction is not stable during synchronization point acquisition processing. To achieve stable performance, specify Y. Note that when Y is specified, more time is required for synchronization point acquisition processing; if necessary, you can use the facility for parallel writes in deferred write processing to distribute the write processing workload.
18) pd_process_terminator = resident | fixed | nonresident
If a HiRDB process is abnormally terminated, HiRDB starts a process that executes post-processing. This operand specifies whether the post-processing process is activated when HiRDB is started.
resident:
This option starts a single post-processing process when starting HiRDB. For a HiRDB/Parallel Server, a post-processing process is started in each unit.
If multiple processes terminate abnormally at the same time, post-processing processes up to the number specified by HiRDB are started and executed in parallel. If a new post-processing process cannot be started due to memory shortage, for example, post-processing is sequentially performed using the post-processing processes that are already active.
If the number of post-processing processes specified by HiRDB cannot be started due to a memory shortage, HiRDB (or the affected unit for a HiRDB/Parallel Server) might terminate abnormally.
fixed:
When starting HiRDB, this option starts the number of post-processing processes specified by the pd_process_terminator_max operand. For a HiRDB/Parallel Server, the number of post-processing processes specified by the pd_process_terminator_max operand are started in each unit. If post-processing processes cannot be started due to memory shortage, for example, HiRDB (or the applicable unit for a HiRDB/Parallel Server) is not started.
If a number of processes exceeding the value specified in the pd_process_terminator_max operand terminate abnormally at the same time, no additional post-processing processes are started. In this case, post-processing is sequentially performed using the post-processing processes that are already active.
nonresident:
This option does not start any post-processing process when starting HiRDB. A post-processing process is started whenever a process terminates abnormally.
If multiple processes terminate abnormally at the same time, post-processing processes are simultaneously started and executed in parallel. If post-processing processes cannot be started due to memory shortage, for example, HiRDB (or the applicable unit for a HiRDB/Parallel Server) might terminate abnormally in some cases.
Specification guidelines
  • To improve reliability, specify resident or fixed. Although fixed provides higher post-processing performance than resident, fixed requires more memory.
  • When nonresident is specified, post-processing processes are started on demand. Consequently, post-processing processes cannot be started if memory shortage occurs. Furthermore, if multiple processes terminate abnormally at the same time, multiple post-processing processes are started, resulting in performance degradation.
  • If you want to prevent HiRDB from terminating abnormally when a post-processing process cannot be started, we recommend that you specify fixed.
Note
You must be careful when changing the specification value to fixed. Because this option starts post-processing processes when starting HiRDB, it requires more memory. If memory shortage, for example, prevents post-processing processes from being started, HiRDB (or the applicable unit for a HiRDB/Parallel Server) cannot start.
19) pd_process_terminator_max = maximum-number-of-resident-post-processing-processes
~<unsigned integer>((1-100)) << (3, [Figure]value of pd_max_users[Figure] 100[Figure])>>
Specify this operand if you have omitted the pd_process_terminator operand or specified fixed or it. Specify for the pd_process_terminator_max operand the number of post-processing processes to be started when starting HiRDB. If memory shortage, for example, prevents the specified number of post-processing processes from being started, HiRDB (or the applicable unit for a HiRDB/Parallel Server) cannot start.
Specification guidelines
The number of post-processing processes needed is proportional to the value of pd_max_users. A small value might delay recovery processing, while a large value might use up memory unnecessarily.
Relationship to other operands
If v6compatible or v7compatible is specified in the pd_sysdef_default_option operand, the default value for this operand is as follows:
[Figure](value of pd_max_users[Figure] 100[Figure]
20) pd_process_desktopheap_size = size-of-desktop-heap-used-per-process
~<unsigned integer>((50-10000))(bytes)
  • Windows XP, Windows Vista, Windows Server 2008, Windows Server 2012, Windows 7, or Windows 8: <<5000>>
  • Windows Server 2003: <<100>>
Specifies the size of the desktop heap used per process in HiRDB.
Specification guidelines
  • Normally, there is no need to specify this operand.
  • Use the following formula to determine the desktop heap size for HiRDB:
    Desktop heap size for HiRDB = number of desktops created by HiRDB[Figure] desktop heap size per desktop#1 (bytes)
    Number of desktops created by HiRDB = [Figure](pd_max_server_process operand value + 50) [Figure] desktop heap size per desktop#1[Figure] pd_process_desktopheap_size operand value[Figure]
    The maximum desktop heap size is 48 megabyes#2 for the entire server machine. If the total size of the desktop heap, including other processes that are running, exceeds 48 megabytes#2, take the following actions:
    [Figure]Determine the desktop heap size for HiRDB, reduce the pd_max_server_process operand value, and then restart HiRDB.
    [Figure]Terminate other processes that are running.
    #1: This is the size of the non-interactive desktop heap specified in the OS registry.
    #2: This is the maximum value for the default desktop heap for Windows Server 2003 (32 bits). The maximum value for the desktop heap depends on the OS.
21) pd_server_entry_queue = spnfifo | fifo | loop
If contention occurs in the HiRDB server process during concurrent execution of UAPs, processing requests might sometimes be temporarily queued. This operand specifies what HiRDB must do in this case. Note that process contention in this case means that multiple processes are simultaneously trying to lock internal resources, such as tables and RDAREAs, when transactions are running on the HiRDB server process. Only a single process is allowed to lock internal resources at any point in time. Spin, referred to in the following explanation means a process for acquiring the right to execute a lock. When another process releases the right to execute a lock, a process that is spinning has a higher probability of acquiring the right to execute a lock.
spnfifo:
A processing request that occurs first is given higher priority. However, because the process is spun a certain number of times before being registered in a queue, the priority order is not perfect. This method is used in Version 06-00 and earlier versions.
fifo:
A processing request that occurs first is given higher priority than when spnfifo is specified. Because no spinning occurs before a process is registered in a queue, the priority order is maintained better than when spnfifo is specified. This method also reduces the CPU load.
loop:
All processing requests are given the same priority. When processes are registered in a queue, they are spun at high speed. Specifying loop might improve the response during concurrent execution of UAPs. However, this method places a greater load on the CPU than other methods.
Specification guidelines
Normally, you need not specify this operand.
Change the specification value if the processing performance during concurrent execution of UAPs does not improve. Doing so might improve the performance.
22) pd_thdlock_sleep_func = 0 | 1
Specifies the process standby method to be used when acquiring a lock on shared resources, such as shared memory. The following table shows the relationship between the values specified in this operand and in the pd_thdlock_retry_time operand.
pd_thdlock_sleep_func
operand value
pd_thdlock_retry_time operand value
1 to 1000010001 to 1000000​
0The processes go on standby for only the amount of sleep time set for the inter-thread lock specified with select() or Sleep().
1The OS determines process allocation using sched_yield() or SwitchToThread() (the pd_thdlock_retry_time operand value is ignored)#The processes go on standby for only the amount of sleep time set for the thread lock specified with select() or Sleep().
#: Because processes do not go on standby, CPU usage increases.
Specification guidelines
  • Specification of this operand is optional. Either specify 0 or omit this operand.
Notes
  • If you change the value of this operand from 0 to 1, CPU usage might increase, resulting in performance degradation in some cases.
  • Processing to obtain a thread lock might not always work on the first try. Retry until a lock is acquired.
    If you retry with 1 specified in this operand, no sleep processing will result, so if CPU usage rises to 100%, the overhead associated with obtaining the thread lock will become a major issue during multiplexed execution of processing. This means that even when the equivalent number of transactions are inserted prior to CPU usage reaching 100%, CPU usage might stay at 100% for an extended period.
Relationship to other operands
Specification of this operand is invalid if a value greater than 10000 is specified for the pd_thdlock_retry_time operand.
23) pd_thdlock_wakeup_lock = Y | N
Specifies a thread lock release notification method. Specify Y in this operand to ensure that release notifications are transmitted.
Y:
When issuing a thread lock release notification, a new separate lock is temporarily obtained.
N:
When issuing a thread lock release notification, no new separate lock is temporarily obtained.
This is the HiRDB processing mode for versions 06-02 and earlier.
Specification guidelines
Specify Y in this operand.
Notes
Note the following about specifying N or omitting this operand:
  • Transactions might occur that have longer execution times than for other transactions, reducing response during multiplexed UAP execution.
  • When no notification is sent that a thread lock has been released, there might be a delay equal to the amount of time specified in pd_thdlock_pipe_retry_interval in obtaining the lock that is waiting for release.
24) pd_thdlock_pipe_retry_interval = thread-lock-release-check-interval
~<unsigned integer>((0-2147483647))<<1000000>>(microseconds)
Specifies the interval in microseconds at which to check for thread lock release.
Specification guidelines
If the value that is set is the same as or greater than the default value and all the following conditions are satisfied, CPU usage might decrease:
  • pd_thdlock_wakeup_lock = Y is specified.
  • Processing performance does not increase during multiplexed UAP execution.
  • The CPU usage rate is very high.
However, transactions tend to occur that have longer execution times than for other transactions.
Do not specify this operand when the conditions above are not applicable.
Note
If a value less than the default value is specified, release checking is repeated at short intervals, which might the increase the CPU usage rate.
25) pd_thdlock_retry_time = thread-lock-sleep-time
~<unsigned integer>((1-1000000))<<10000>>(microseconds)
Specifies the thread lock sleep time in microseconds. If this operand is specified when all the conditions listed below are satisfied, the CPU usage rate might decrease:
  • The CPU usage rate is very high.
  • Reducing the CPU usage rate is necessary, even if it results in a reduction in performance.
  • 0 is specified for the pd_thdlock_sleep_func operand.
Do not specify this operand when the conditions above are not applicable.
The following describes the HiRDB processing based on the combination of the pd_thdlock_sleep_func and the pd_thdlock_retry_time operand values:
pd_thdlock_sleep_func operand valuepd_thdlock_retry_time operand value
1 to 1000010001 to 1000000​
0Each process stands by for the thread lock sleep time specified by select() or Sleep().
1The OS determines process allocation using sched_yield() or SwitchToThread() (the pd_thdlock_retry_time operand value is ignored).#Each process stands by for the thread lock sleep time specified by select() or Sleep().
#: Because processes do not go on standby, CPU usage increases.
Specification guidelines
If you specify this operand, start by specifying 10000. If the CPU usage rate is still too high, increase the value.
Notes
  • Reducing the value might not change the performance.
  • Specifying 1000 or a greater value might have an adverse effect on performance.
Relationship to other operands
If v6compatible is v7compatible is specified in the pd_sysdef_default_option operand, the default value for this operand is 10000.
26) pd_thdspnlk_spn_count = thread-spin-lock-spin-count
~<unsigned integer>((0-2147483647))<<512>>
Specifies a spin count for thread spin lock. Specifying this operand when all of the following conditions are satisfied might improve the system performance. Otherwise, there is no need to specify this operand.
  • An ample margin exists in the CPU usage rate.
  • You want to improve performance, even if doing so increases the CPU usage rate.
Specification guidelines
  • If this operand is to be specified, specify a value that is greater than the default value (512).
  • Because the specification value depends on the OS type, the processor type, the machine performance, the disk performance, the UAP content, and the number of UAPs concurrently being executed, there is no clear guideline. Determine an appropriate value by varying the specification value and measuring the performance.
Notes
  • If the value of this operand is too large, the CPU usage rate might increase, causing problems such as slower OS operation. In this case, decrease the operand value.
  • Increasing the value of this operand might not always improve performance.
27) pd_pageaccess_mode = SNAPSHOT | NORMAL
Specifies the page access mode to be used for database search.
SNAPSHOT:
Uses a snapshot mode for page access. When the global buffer is accessed for the first time, rows that match the search condition are copied to the process private memory. During the second search request, a search result is returned by referencing the process private memory. For details about the snapshot mode, see the HiRDB Version 9 Installation and Design Guide.
NORMAL:
Uses a normal mode for page access. The global buffer is accessed for each search request.
Specification guidelines
If facilities for improving performance, such as the rapid grouping facility, cannot be used, consider using the snapshot mode. In normal search-SQL, the global buffer is accessed roughly the same number of times as the number of rows that match the specified search condition. Consequently, if search-SQLs are concurrently executed, accesses to the global buffer become concentrated, and as a result, the expected performance might not be obtained. In this case, using the snapshot mode can reduce the number of accesses by search-SQLs to the global buffer, and thus might improve the performance. However, using the snapshot mode increases the size of the process private memory used by HiRDB. For details about how to compute the size of process private memory when using the snapshot mode, see the HiRDB Version 9 Installation and Design Guide.
Relationship to other operands
When v6compatible is specified in the pd_sysdef_default_option operand, the default for this operand is NORMAL.
Effects on individual estimation formulas
If the value of the pd_pageaccess_mode operand is changed, the following estimation formulas are affected:
HiRDB Version 9 Installation and Design Guide:
  • Procedure for obtaining the size of the memory required when the snapshot method is used under Estimating the memory size required for a HiRDB/Single Server
  • Procedure for obtaining the size of the memory required when the snapshot method is used under Estimating the memory size required for a HiRDB/Parallel Server
28) pd_cmdhold_precheck = Y | N
Specifies whether to check for RDAREA hold before locking the RDAREA.
Y:
Checks for RDAREA hold before locking the RDAREA.
N:
Does not check for RDAREA hold before locking the RDAREA. Checking is performed after locking.
The following hold types are checked:
  • Command hold
  • Reference-possible hold
  • Reference-possible backup hold
Specification guidelines
Normally, omit this operand or specify Y. The following table describes the differences between Y and N specifications.
ItemY specifiedN specified
Processing by HiRDBDuring UAP or command# execution, HiRDB checks the hold status of all RDAREAs that might be accessed before locking the RDAREAs. For example, when accessing a table that is row-partitioned into RDAREAs 1 through 4, HiRDB checks the hold status of all four RDAREAs. However, when conditions are specified by key range partitioning or FIX hash partitioning, and the RDAREAs that might be accessed by the UAP are narrowed, no error results even when RDAREAs that cannot be accessed are on hold.During UAP or command# execution, HiRDB first locks RDAREAs and then checks the hold status of all RDAREAs that might be accessed. For example, assume that a table that is row-partitioned into RDAREAs 1 through 4 is to be accessed. If the target RDAREAs are narrowed using an index and if RDAREA 1 is to be accessed, HiRDB checks the hold status of RDAREA 1 only. This mode is used in HiRDB version 5.0 and earlier.
When a UAP accesses an RDAREA that is on holdBecause a hold check is performed before locking the RDAREA, the fact that the RDAREA is on hold can be detected more quickly than when N is specified.Because a hold check is performed after locking the RDAREA, the locked RDAREA might cause a timeout error (KFPA11770-E) if a UAP accesses the RDAREA that is on hold.
Additionally, if the access target RDAREA is on hold because data is being loaded or because it is being reorganized, the UAP might cause a hold error (KFPA11920-E).
When using a non-row partitioning index to narrow the access target RDAREAsYou must be careful when a table is row-partitioned but the index is not. When using a non-row partitioning index to narrow the access target RDAREAs. a hold error (KFPA11920-E) occurs, even when a non-access target RDAREA is on hold. In the example given for processing by HiRDB, the UAP causes a hold error (KFPA11920-E) if any of RDAREAs 1 through 4 is on hold.When using a non-row partitioning index to narrow the access target RDAREAs, the UAP or command can be executed even if a non-access target RDAREA is on hold. In the example given for processing by HiRDB, the UAP can be executed even if RDAREAs 2 through 4 are on hold.
#: Refers to UAPs and commands that cannot be executed if RDAREAs are on hold.
29) pd_db_io_error_action = dbhold | unitdown
Specifies the processing to be performed by HiRDB when an input/output error occurs in an RDAREA (excluding the master directory RDAREA). If an input/output error occurs in the master directory RDAREA, HiRDB (or a unit for a HiRDB/Parallel Server) always terminate abnormally regardless of the specification in this operand. For the actions to be taken when an RDAREA input/output error occurs, see the HiRDB Version 9 System Operation Guide.
An input/output error in this case refers to an error that occurs when a file manipulation attempt by HiRDB fails due to a cause that cannot be determined by HiRDB. When such an error occurs, -1544 is output as the error code returned in response to a HiRDB file system access request.
dbhold:
When an input/output error occurs in an RDAREA, the RDAREA is placed in an error shutdown state.
unitdown:
If an input/output error occurs in an RDAREA, HiRDB (or a unit for a HiRDB/Parallel Server) terminate abnormally. However, if an input/output error occurs again following an abnormal termination, the RDAREA is placed in an error shutdown state. To enable the specification of unitdown again, take one of the following actions:
  • Start HiRDB normally.
  • Execute the system reconfiguration command (pdchgconf command).
Specification guidelines
To determine the specification value for this operand, see Actions to be taken when an RDAREA input/output error occurs in the HiRDB Version 9 System Operation Guide.
Notes
  • HiRDB terminates abnormally if an input/output error occurs while unitdown is specified. Consequently, in the following cases, the processing target RDAREA might go onto error shutdown status:
    [Figure]The UAP or utility is executing in the pre-update log acquisition mode or the no-log mode.
    [Figure]The UAP or utility is being executed on a user LOB RDAREA that has been placed in the no-log mode by specification of NO in the RECOVERY operand of CREATE TABLE.
    If you use the facility for taking a unit down when a physical error is detected, avoid running these operations, if possible. If you need to run these operations, make a backup prior to running the UAP or utility in case recovery from an RDAREA error shutdown needs to be performed. For details about making back-ups, see the HiRDB Version 9 System Operation Guide.
  • If an input/output error occurs during the startup or termination process, HiRDB does not terminate abnormally even if unitdown is specified.
  • During recovery processing by the database recovery utility (pdrstr), HiRDB does not terminate abnormally even though unitdown is specified. In such a case, re-execute pdrstr to perform recovery.
Relationship to other operands
This operand is related to the following operands:
  • pd_mode_conf operand
  • pd_db_access_error_action operand
  • pd_db_hold_action operand
If unitdown is specified in more than one of the pd_db_io_error_action, pd_db_access_error_action, and pd_db_hold_action operands, the operand value that takes effect is determined in the following order:
  1. pd_db_io_error_action operand
  2. pd_db_access_error_action operand
  3. pd_db_hold_action operand
If more than one RDAREA input/output, file access, or physical error has occurred, determine the error that caused unitdown based on the above priority. In addition, see the message that is issued.
30) pd_connect_errmsg_hide = Y | N
Specifies whether to hide the error cause in the message that is output when a connection attempt fails.
Y: Hides the error cause when a connection attempt fails.
N: Does not hide the error cause when a connection attempt fails.
Depending on the value specified for this operand, the message that is output when a connection attempt fails might vary. The following table shows the details:
Error causeOutput message
pd_connect_errmsg
_hide = Y
pd_connect_errmsg
_hide = N (default value)
Invalid authorization identifier (the specified user does not exist)KFPA19632-EKFPA11561-E
Invalid password (the specified password is invalid)KFPA19632-EKFPA11560-E
31) pd_rpc_bind_loopback_address = Y |N | S
Specifies whether a loopback address is to be used for bind() when the receiving port is generated.
Y: Use a loopback address for bind().
N: Do not use a loopback address for bind().
S:
The processes that accept connection requests only from processes in the HiRDB server use a loopback address for bind(). The processes that accept connection requests from HiRDB clients (system manager process and scheduler process) do not use a loopback address for bind().
Condition
If Y is specified in this operand, all the following conditions must be satisfied:
  • The HiRDB system consists of only HiRDB/Single Server# or the system switchover facility that inherits IP addresses is used in monitor mode.
  • A loopback address is specified in the -x option in the pdunit operand and for the PDHOST operand in the client environment definition.
#
The HiRDB system consisting of only HiRDB/Single Server means that the following condition is satisfied:
  • Both the HiRDB client and the HiRDB server are installed on the same machine (the HiRDB client is not installed on a separate machine).
If S is specified in this operand, all the following conditions must be satisfied:
  • This is HiRDB/Single Server.
  • A port number for the scheduler process is specified in one of the following system definitions:
    [Figure]pd_scd_port operand
    [Figure]pd_service_port operand
    [Figure]-s option in the pdunit operand
  • A loopback address is specified in the -x option in the pdunit operand.
  • If the HiRDB client connects to the HiRDB server from a separate server machine, it uses the high-speed connection facility and the following operands are specified in the client environment definition for the HiRDB client:
    [Figure]PDSERVICEGRP
    [Figure] PDSERVICEPORT
    [Figure] PDSRVTYPE=PC
Specification guidelines
The items to be added to the Windows Firewall exception list depends on the value of this operand as shown below. If you specify Y or S, you can eliminate or reduce the port numbers and programs that will be used by HiRDB and, therefore, added to the Windows Firewall exception list.
Value of pd_rpc_bind_loopback_address operandPort numbers and programs that will be used by HiRDB and need to be added to the Windows Firewall exception list
YNone
NAll port numbers and programs that will be used by HiRDB
S
  • If port numbers are registered
    HiRDB's port number#1 and the scheduler process's port number#2
  • If program names are registered
    %PDDIR%\lib\servers\pdrdmd.exe
    %PDDIR%\lib\servers\pdscdd.exe
#1
This is the value specified in one of the following system definitions:
  • pd_name_port operand
  • -p option in the pdunit operand
#2
This is the value specified in one of the following system definitions:
  • pd_scd_port operand
  • pd_service_port operand
  • -s option in the pdunit operand
For details about how to add items to the Windows Firewall exception list, see the HiRDB Version 9 Installation and Design Guide.
Relationship to other operands
This operand is related to the following operands:
  • pd_name_port
  • pd_scd_port
  • pd_service_port
  • pdunit -p
  • pdunit -s
  • pdunit -x
  • PDHOST
  • PDSERVICEGRP
  • PDSERVICEPORT
  • PDSRVTYPE=PC
32) pd_cancel_down_msgchange = Y | N
Specifies whether the error messages output when a server process is forcibly terminated are to be changed.
Y:
Changes the error messages to warning messages. The facility for changing error messages is called the facility for changing a process down message when cancelling a transaction.
N:
Does not change the error messages.
The following shows the relationship between the value of this operand and the error messages that are output:
ConditionMessages that are output
When Y (default value) is specifiedWhen N is specified
Server process is terminated forcibly for one of the following reasons:#
  • Intentional forced termination by the user
  • Forced termination caused by a timeout
  • Forced termination due to a failure at the client
  • KFPS01852-W
  • KFPO00115-W
  • KFPS01820-E
  • KFPO00105-E
Server process is terminated forcibly for some other reason
  • KFPS01820-E
  • KFPO00105-E
HiRDB cannot identify the cause of the forced termination of the server process
#: There are other causes that change the messages. For details, see Facility for changing the process-down message when a transaction is cancelled in the HiRDB Version 9 System Operation Guide.
Advantages
By specifying Y in this operand, you change the messages that are displayed for identifying the cause of forced termination of a server process.
Remarks
When the KFPS01820-E and KFPO00105-E messages are displayed, it is not possible to use the message IDs to distinguish between errors detected by HiRDB and errors resulting from an intentional user operation. To identify the cause, you must compare the process IDs that are displayed in the individual messages.
If JP1 is used to monitor messages, handling based on the KFPS01820-E and KFPO00105-E messages might be complicated because information about multiple messages cannot be compared. Specifying Y in this operand makes it easier to handle such messages because the output messages are classified by error cause. For this reason, it is recommended that you specify Y in this operand when you use JP1 to monitor messages.
Relationship to other operands
If v6compatible or v7compatible is specified in the pd_sysdef_default_option operand, the default value for this operand is N.