8.4.3 Whether reloading is permitted when the table definitions of unload table and reload table do not match

pdrorg outputs the definition information for an unloaded table to the unload data file. During reloading, pdrorg compares the table definition information in the unload data file with that for the table to be reloaded to determine whether reloading is possible.

If the table definitions are the same, the unloaded table can be reloaded. However, whether or not reloading to a different table, transfer of table data to another system, or reloading to a table with a different table definition is possible depends on conditions.

Organization of this subsection
(1) Options to be specified during reloading
(2) Comparing the storage conditions between the unloaded table and the reload table
(3) Limitations on reloading

(1) Options to be specified during reloading

If you are reloading table data to a different table, transferring table data to another system, or reloading table data to a table whose table storage conditions are different from those of the unloaded table, you must specify the following options:

(2) Comparing the storage conditions between the unloaded table and the reload table

If the unloaded table and the reload table employ the same partitioning method, the utility checks the items listed in Table 8-5 Storage condition check items when the unloaded table and reload table employ the same partitioning method to determine whether or not their storage conditions are different. If their storage conditions are different, whether or not reloading is possible is determined by the criteria shown in Table 8-6 Whether reloading is possible when storage conditions are different (this is applicable when reloading is to be performed in units of tables or schemas; reloading in units of RDAREAs is not supported at all).

Table 8-5 Storage condition check items when the unloaded table and reload table employ the same partitioning method

Partitioning methodItems checked
Non-partitioningNone
Hash partitioningHash functionFunction name
Hash typeFIX or flexible
Column structure of partitioning keyDefined order
Storage RDAREAsNumber of storage RDAREAs, RDAREA IDs, RDAREA names, and server names
Key range partitioningColumn structure of partitioning keyDefined order and column IDs
Start column of partitioning keyColumn ID, data type, and defined length
Number of partitioning conditions
Partitioning conditionStorage RDAREA IDs and condition values
Matrix partitioningColumn structure of partitioning keyDefined order
Number of partitioning conditions
Number of partitioning condition values
Partitioning key conditionsNumber of partitions in key, dimension number, partitioning column ID, data type, defined length, length of condition value, and condition value
Hash functionFunction name
Hash typeFIX or flexible
Storage RDAREAsNumber of storage RDAREAs, RDAREA IDs, RDAREA names, and server names

Table 8-6 Whether reloading is possible when storage conditions are different

-g#1HiRDB confPartitioning conditions of unloaded tablePartitioning conditions of table to be reloaded
Key range ptnHash partitioningMatrix partitioningNot partitioned
FIXFlexKey range and key rangeKey range and hash
SpecifiedHiRDB single server configurationKey range partitioningYYYYYY
Hash ptnFIXYYYYYY
FlexYYYYYY
Matrix ptnKey range and key rangeYYYYYY
Key range and hashYYYYYY
Not partitionedYYYYYY
HiRDB parallel server configurationKey range partitioningYYYYYY
Hash ptnFIXYYYYYY
FlexYYYYYY
Matrix ptnKey range and key rangeYYYYYY
Key range and hashYYYYYY
Not partitionedYYYYYY
OmittedHiRDB single server configurationKey range partitioningYYYYYY
Hash ptnFIXNYYYYY
FlexNYYYYY
Matrix ptnKey range and key rangeYYYYYY
Key range and hashYYYYYY
Not partitionedYYYYYY
HiRDB parallel server configurationKey range partitioningY#6NY#2, #3NNY#5
Hash ptnFIXNNY#2, #4NNY#5
FlexNNY#7NNY#5
Matrix ptnKey range and key rangeNNY#2, #3Y#6NY#5
Key range and hashNNY#2, #3NNY#5
Not partitionedNNY#2, #3NNY#2
Legend:
Y: Can be reloaded according to the storage conditions of the table to be reloaded.
N: Cannot be reloaded.
conf: configuration
ptn: partitioning
Flex: flexible
#1: Indicates whether or not the -g option is specified during unloading or reloading. Reloading from a partitioned table to a non-partitioned table when the -g option is omitted means reloading from a partitioned table that is not partitioned among multiple servers to a non-partitioned table. If the table is partitioned among multiple servers, specify the -g option.
#2: For a table with a BLOB column or a column of an abstract data type with the BLOB attribute, reloading is supported only when the -j option is specified during unloading and reloading.
#3: pdrorg stores data in a wrap-around manner without using the hash function.
#4: Data is stored in the same RDAREA as during unloading. Data cannot be reloaded if the corresponding RDAREA is not found during reloading.
#5: Reloading is not supported for a table containing a BLOB column or a column of an abstract data type with the BLOB attribute
#6: Whether or not reloading is supported depends on the change made to the table storage conditions, as described below:
Change to the table storage conditionsWhether or not reloading is supportedRemarks
Partitioning conditions changedPartitioning conditions addedNTerminates with an error.
Partitioning conditions deleted
Partitioning key value changed
Partitioning conditions not changedStorage RDAREA changedRDAREA name changedYIf the conditions of #2 and #5 are satisfied, the utility stores data in the RDAREA corresponding to the storage RDAREA used during unloading.
Change made to the server containing the RDAREANTerminates with an error.
Storage RDAREA not changedPartitioning key component column changed (such as column name and specification order)NTerminates with an error.
Legend:
Y: Can be reloaded.
N: Cannot be reloaded.
#7: Whether or not reloading is supported depends on the change made to the table storage conditions, as described below:
Change to the table storage conditionsWhether or not reloading is supportedRemarks
Storage RDAREA changedRDAREA addedYIf the conditions of #4 and #5 are satisfied, the utility stores data in the RDAREA used during unloading. Data is not stored in the added RDAREA.
RDAREA deletedNTerminates with an error.
RDAREA renamed
Change made to the server containing the RDAREA
Storage RDAREA not changedHash function changedYIf the conditions of #4 and #5 are satisfied, the utility stores data in the RDAREA used during unloading.
Partitioning key component column changed (such as column name and specification order)
Legend:
Y: Can be reloaded.
N: Cannot be reloaded.

(3) Limitations on reloading

Reloading is prohibited in the following cases:

  1. For a table containing a LOB column, the -j option is omitted.
  2. Reloading from a FIX table to a non-FIX table, or vice versa.
  3. There is a mismatch between the unloaded table and the table to be reloaded in terms of the number of table columns, the order of the column definitions, the data types of a column, the column names, or the column attributes (such as NOT NULL constraint).
  4. The unload table contains a column with the NOT NULL constraint and the reload table contains partitioning key structure columns. (If a column with the NOT NULL constraint is changed to a partitioning key structure column, the corresponding table must be unloaded with the -W option specified. The data can then be loaded by the database load utility.)
  5. A new unique key index or primary key index is defined for a data column with duplicated values.
  6. When the number of elements for each repetition column in the table to be reloaded is less than the unloaded table.
  7. The data type of a column for which an abstract data type has been defined has been changed.