Nonstop Database, HiRDB Version 9 System Operation Guide
Executor: HiRDB administrator and table owner (or user with DBA privilege)
This section explains how to manage a list to be used for narrowed search. The following points should be noted when a list is used.
When HiRDB terminates (including abnormal termination), all lists are deleted, rendering a search using one of the lists impossible. If a list is needed, it must be re-created with the ASSIGN LIST statement.
When the base table of a list is recovered to the most recent synchronization point, that list can be used as is. However, if the base table is not recovered to the most recent synchronization point (for example, if it is recovered to the status when a backup was made), the base table might no longer match the list, and the list must be re-created with the ASSIGN LIST statement.
When an RDAREA storing the base table of a list is re-initialized, you must do one of the following:
When any of the following processing is performed on the base table of a list, the retrieval results for the list become invalid, and the list must be re-created with the ASSIGN LIST statement:
The following commands cannot be used for a list or list RDAREA:
To reduce overhead during list creation and deletion, HiRDB maintains list management information in the memory of a dictionary server. Consequently, list management information is lost when the dictionary server or the unit in which the dictionary server is located is terminated. When this occurs, all lists that have been created become invalid and must be re-created with the ASSIGN LIST statement.
Once the dictionary server is restarted and until the transactions that use lists of other users that were being executed before the dictionary server was terminated have been completely recovered, processes that use the lists might cause the KFPA11998-E error message, list operation not completed, to be output.
List information can be checked by executing the pdlistls command. The following information is displayed:
Exercise caution if the RDAREA being accessed is to be changed when a replica RDAREA has been defined for an RDAREA that contains a base table of a list. If the RDAREA being accessed is changed with the current database switch command (pddbchg command) or with the PDDBACCS operand in the client environment definition or UAP environment definition, the search results are invalid except in the following cases:
Use one of the following methods to search such a list:
For details about the inner replica facility, see the HiRDB Version 9 Staticizer Option Description and User's Guide.
As explained in (1) above, lists are deleted when HiRDB terminates. Deletion (and initialization) processing on these lists is performed during HiRDB startup, which means that the more lists that are created, the longer it takes for HiRDB to start. For this reason, we recommend that you consider changing the time at which lists are initialized in the following cases:
The list initialization time can be changed as follows with the pd_list_initialize_timing operand:
With this specification, lists are initialized when the ASSIGN LIST statement is executed, rather than when HiRDB starts. This, of course, adds to the initialization overhead when an ASSIGN LIST statement is executed. To minimize the initialization processing overhead, set the list RDAREA size and maximum number of lists so that they are as small as possible. To accommodate creation of a large number of lists, create additional list RDAREAs. This enables you to distribute the initialization processing overhead when the ASSIGN LIST statement is executed.
With this specification, lists are initialized when the standby HiRDB starts. Lists are not initialized when the system is switched over. Lists are not initialized when the ASSIGN LIST statement is executed after the system has been switched over either. Because of this, increase the list RDAREA size and maximum number of lists to reduce the number of list RDAREAs that are created. However, you must first perform the preparatory work explained below.
If you have created separate list RDAREAs on the local disks of the running system and the standby system described in subsection (9)(b), and if you are not performing the re-initialization described in (9), use the following procedure to change the configuration of the RDAREAs:
All Rights Reserved. Copyright (C) 2011, 2015, Hitachi, Ltd.