OpenTP1 Version 7 System Definition

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

Lock service definition

Format

set format

[set lck_limit_foruser=maximum-user-server-concurrent-lock-request-
                       count]
[set lck_limit_fordam=maximum-DAM-service-concurrent-lock-request-
                      count]
[set lck_limit_fortam=maximum-TAM-service-concurrent-lock-request-
                      count]
[set lck_limit_formqa=maximum-MQA-service-concurrent-lock-request-
                      count]
[set lck_wait_timeout=lock-waiting-timeout-value]
[set lck_deadlock_info=Y|N]
[set lck_deadlock_info_remove=normal|force|no]
[set lck_deadlock_info_remove_level=deadlock-information-file-and-
                                    timeout-information-file-delete-
                                    level]
[set lck_release_detect=interval|pipe]
[set lck_release_detect_interval=maximum-interval-time-for-
                                 detecting-unlock]
[set lck_prf_trace_level=acquisition-level-for-LCK-performance-verification-trace-information]

command format

None

Function

The lock service definition defines the execution environment to use the OpenTP1 exclusive control function.

Explanation

set format

lck_limit_foruser=maximum-user-server-concurrent-lock-request-count~<unsigned integer> ((0-327670)) <<512>>

Specify the maximum number of lock requests that can be generated simultaneously from user servers on this node. Specify 0 to disable use of the exclusive control function.

lck_limit_fordam=maximum-DAM-service-concurrent-lock-request-count~<unsigned integer> ((0-327670)) <<512>

Specify the maximum number of lock requests that can be generated simultaneously from DAM services on this node.

Use the following formula to compute the number of lock requests.

[Figure]

where,

t:

Number of transactions to be executed concurrently

p:

Number of transactions to be executed concurrently to enable access not to be recovered

T:

Number of files opened in one transaction branch plus number of blocks referenced or updated

P:

Number of files opened plus number of blocks referenced and updated in one process of access not to be recovered

#

If the +1 part is not included in the formula, the KFCA01613-E message may be output during execution of the damrm command.

lck_limit_fortam=maximum-TAM-service-concurrent-lock-request-count~<unsigned integer> ((0-327670)) <<512>>

Specify the maximum number of lock requests that can be generated simultaneously from TAM services on this node.

Use the following formula to compute the number of lock requests.

[Figure]

t is the number of transactions executed concurrently.

T is the number of tables to be retrieved or updated with one transaction.

R is the number of records to be retrieved or updated with one transaction.

lck_limit_formqa=maximum-MQA-service-concurrent-lock-request-count~<unsigned integer> ((0-327670)) <<0>>

Specify the maximum number of lock requests that can be concurrently issued from the MQA service on this node. For calculation of the number of lock requests, see the OpenTP1 TP1/Message Queue User's Guide.

lck_wait_timeout=lock-wait-timeout-value~<unsigned integer> ((0-32767)) <<0>> (Unit: seconds)

Specify the maximum monitoring time between the point at which a lock request enters a wait state until it is released.

If the wait state is not released after the specified timeout value, the lock service returns an error for that lock request.

Specify 0 to disable a check of the lock waiting time.

lck_deadlock_info=Y|N~<<N>>

Specify deadlock information and timeout information are to be output.

The OpenTP1 system creates a file under $DCDIR/spool/dclckinf and outputs information whenever a deadlock or timeout occurs. Delete unnecessary files.

Y
Deadlock information and timeout information are output.

N
Deadlock information and timeout information are not output.

lck_deadlock_info_remove=normal|force|no~<<no>>

Specify deadlock information and timeout information are to be deleted during OpenTP1 startup.

normal
They are deleted when the OpenTP1 starts normally.

force
They are deleted when the OpenTP1 starts.

no
They are deleted when the OpenTP1 starts.

lck_deadlock_info_remove_level=deadlock-information-file-and-timeout-information-file-delete-level~<unsigned integer> ((0-24855)) <<0>> (Unit: days)

Specify the delete level of the deadlock information file and timeout information file.

This format will be valid when specifying normal or force in the lck_deadlock_info_remove operand.

0
All files are deleted.

1-24855
The files created before the specified value x 24 hours calculated from the lock service startup time are deleted.

lck_release_detect=interval|pipe~<<pipe>>

Specify how to check on when the occupied process is unlocked if the locks conflict. This operand is valid if the process waits for the lock.

interval
The lock management area of the shared memory at predetermined intervals is checked. This operand checks if the occupied process performs an unlock by widening a interval gradually from 50 milliseconds to the specified value in the lck_release_detect_interval operand. The lock wait time takes much since a retrieval cannot be done until the next interval even if the lock occupancy process unlocks.

pipe
Unlock is checked using a pipe file.
An unlock is reported from the occupancy process to the lock wait process. When the lock occupancy process is unlocked, the lock wait process can detect an unlock. The number of dynamic steps of a transaction in which the locks conflict increases more than when specifying interval.
Add the result of the following expression to the estimate of the file descriptors since OpenTP1 may simultaneously use pipe files for the value calculated in the following expression:
number-of-processes-that-are-locked-simultaneously + number-of-processes-waiting-to-be-locked-simultaneously + number-of-transaction-recovery-processes-that-can-be-executed-simultaneously

lck_release_detect_interval=maximum-interval-time-for-detecting-unlock~<unsigned integer> ((10-60000)) <<250>> (Unit: milliseconds)

Specify the maximum interval time in which the unlock wait process checks an unlock. This operand is valid when interval is specified to the lck_release_detect operand.

When a value more than 50 is specified, this operand checks the process unlock by widening an interval gradually from 50 milliseconds to this specified value. When a value equal to or less than 50 is specified, this operand checks the process unlock at specified intervals. Determine a specified value following the statistics.

lck_prf_trace_level=acquisition-level-for-LCK-performance-verification-trace-information

~((00000000-00000001)) <<00000000>>

Specify the acquisition level for the LCK performance verification trace.

For details about LCK performance verification traces, see the troubleshooting section in the manual OpenTP1 Description.

00000000
An LCK performance verification trace is not acquired.

00000001
An LCK performance verification trace is acquired.

To output or edit and output the acquired trace to a file, use the prfget or prfed command. The results of the file output operation are saved in $DCDIR/spool/dclckinf/prf. For details about event IDs or these commands, see the manual OpenTP1 Operation.

The use of this operand assumes that TP1/Extension 1 is installed. If TP1/Extension 1 is not installed, the operation is not guaranteed.

command format

None