The integrity check utility (pdconstck) performs integrity checking and manipulates (sets or releases) the check pending status on tables for which referential constraints or check constraints have been defined.
Table 13-1 describes the prerequisites for executing pdconstck.
Table 13-1 Prerequisites for executing pdconstck
Item | Prerequisites |
---|---|
Execution privilege | A user with the DBA privilege or the subject table's owner can execute the utility. |
RDAREA status | For details about the relationship between pdconstck and the status of an RDAREA to be processed, see C. RDAREA Status During Command Execution. |
Concurrent execution | Only one instance of pdconstck can be executed on the same table at the same time. If multiple instances of pdconstck are executed concurrently, deadlock may occur between the subject table's TABLE resource type (resource type 0002) and DICT resource type (resource type 3005). Multiple instances of pdconstck can be executed concurrently as long as there is no duplication among the target tables. However, when the check pending status is changed, the utility is placed in lock-release wait status. |
Maximum number of utilities that can be executed concurrently | The maximum number of instances of pdconstcks that can be executed concurrently is equal to the value of the pd_max_users operand/2. |
Number of resources | Because pdconstck locks the target table and a referenced table that is referenced by a foreign key, you must pay attention to the following values in the system definition:
Y = 209 + A + f + (a + c + (d ![]() ![]() In a HiRDB/Parallel Server: ![]() Y = 209 + A + (a + c + (d ![]() ![]() ![]() Y = 2 + f ![]() Y = (d ![]() ![]()
|
Change of check pending status | Executing pdconstck changes the check pending status, regardless of the specification of the pd_check_pending operand in the system definition. |
Inner replica facility | If you use the inner replica facility, make sure that all RDAREAs associated with the target table (table storage RDAREAs, LOB column storage RDAREAs, and index storage RDAREAs) have the same number of replica definitions. Also, make sure that all the replica RDAREAs are of the same generation. If the target table is a referencing table, pdconstck can be executed on the RDAREAs that are related to the table referenced by the referencing table even if its replica definition is different from that for the corresponding table.
|
Table 13-2 describes the operating environment for pdconstck.
Table 13-2 Operating environment for pdconstck
Item | Operating environment | |
---|---|---|
HiRDB environment | Location of command execution | Execute pdconstck at the server machine that contains the single server, or where the system manager is located. |
Server status | When you execute pdconstck, the following server(s) must be running:
| |
PDDIR environment variable | In the PDDIR environment variable, set the absolute path name of the HiRDB directory. | |
PDCONFPATH environment variable | In the PDCONFPATH environment variable, set the absolute path name of the directory that stores the HiRDB system definition files. | |
OS environment | LANG environment variable | In the LANG environment variable, set the value appropriate for the character encoding specified in the pdsetup command. For details about LANG, see the manual HiRDB Version 8 UAP Development Guide. |
File and directory specified in the -o option | Access privileges must have been granted to the user who executes pdconstck. If the -o option was omitted, access privileges must be granted in the same manner; otherwise, the system assumes that files are to be created in the /tmp directory. |
When you execute pdconstck, you can specify the authorization identifier used to connect to HiRDB as well as the authorization identifiers for the target table and the constraint name. Table 13-3 lists the authorization identifier used to connect to HiRDB and the authorization identifiers for the target table and constraint name.
Table 13-3 Authorization identifier used to connect to HiRDB and authorization identifiers for the target table and constraint name
Specification condition | Connection with HiRDB | Auth identifier for the target table or constraint name | ||||
---|---|---|---|---|---|---|
Auth identifier used to connect to HiRDB (-u option) | PDUSER environment variable | Auth identifier for target table or constraint name (-t or -c option) | Auth identifier | Password | ||
Auth identifier | Password | |||||
Specified | Specified | Specified | Specified | Authorization identifier specified in the -u option | Entered in response to a message* | Authorization identifier specified in the -t or -c option |
Not specified | Authorization identifier specified in the -u option | |||||
Omitted | Specified | Authorization identifier specified in the -t or -c option | ||||
Not specified | Authorization identifier specified in the -u option | |||||
PDUSER environment variable omitted | Specified | Authorization identifier specified in the -t or -c option | ||||
Not specified | Authorization identifier specified in the -u option | |||||
Not specified | Specified | Specified | Specified | Authorization identifier specified in the PDUSER environment variable | Password specified in the PDUSER environment variable | Authorization identifier specified in the -t or -c option |
Not specified | Authorization identifier specified in PDUSER environment variable | |||||
Omitted | Specified | Omitted | Authorization identifier specified in the -t or -c option | |||
Not specified | Authorization identifier specified in PDUSER environment variable | |||||
PDUSER environment variable omitted | Specified | User name (authorization identifier) in the login window | Entered in response to a message* | Authorization identifier specified in the -t or -c option | ||
Not specified | User name (authorization identifier) in the login window |