Upgrade Guide for UNIX > Preupgrade Tasks > Preparing the Database for a DB2 Upgrade >

Determining Tablespace Page Size for DB2 UDB


There are four standard database managed tablespaces (DMS) that hold Siebel tables and indexes—a 4-KB, 16-KB, 32-KB tablespace, for various sized tables, and a tablespace to hold indexes. However, in some cases, you may have Siebel tables in custom tablespaces. Siebel tables in custom tablespaces remain in the same tablespaces after the upgrade; they are not moved to standard tablespaces.

If a custom table has an estimated page size greater than its current tablespace page size, it will not fit in its tablespace after the upgrade, and the upgrade will fail. The following utility determines whether each of your current custom tables will increase in size to the point that it requires a move to a larger tablespace.

This utility must be run prior to the upgrade, before any steps of the upgrade are executed.

To determine tablespace page size requirements for DB2 UDB

  1. From the siebsrvr/bin directory, type the following command line:

    tblsize /U $TABLEOWNER /P $PASSWORD /C $ODBC_DATASOURCE /F $DDL_FILENAME /B $DEFAULT_TABLESPACE /X $DEFAULT_INDEXSPACE /K $16K_TABLESPACE /V $32K_TABLESPACE /Q $REPORT_FILENAME /L $LOG_FILENAME

    where:

    • TABLEOWNER = Tableowner
    • PASSWORD = Tableowner password
    • ODBC_DATASOURCE = Data source of the database
    • DDL_FILENAME = Name of the DDL file (This file is called ddl.ctl, and it is located in the dbsrvr/db2udb directory.)
    • DEFAULT_TABLESPACE = Name of the 4-KB page standard Siebel tablespace
    • DEFAULT_INDEXSPACE = Name of the standard Siebel index space
    • 16K_TABLESPACE =Name of the 16-KB page standard Siebel tablespace
    • 32K_TABLESPACE = Name of the 32-KB page standard Siebel tablespace
    • REPORT_FILENAME =Name of the report generated by the utility
    • LOG_FILENAME = Name of the log file (The default name is custtbl.log.)
  2. Review the report generated by the utility to determine if the estimated table pagesize postupgrade is larger than the size of the actual custom table pagesize.

    An example of the report generated by this utility is provided below:

    Table Name = S_EVT_ACT

    Custom Tablespace Id = 5

    Custom Tablespace Name = CUST_TBS_EVT_ACT

    Custom Tablespace Pagesize = 4096

    Estimated Table Pagesize (postupgrade) = 5067

    Status = Does not fit in its custom tablespace

  3. For each table that has Status: Does not fit in its custom tablespace, you must create a larger custom tablespace which is larger than the estimated table pagesize postupgrade.
  4. Move the tables from their old tablespaces to the new ones by running ddlmove.

    ddlmove is a utility for moving tables from one tablespace to another tablespace. This utility is located under the $SIEBEL_ROOT/siebsrvr/bin directory.

    To run ddlmove, submit the following arguments:

    ddlmove /U $TABLEOWNER /P $TABLE_PASSWORD /C $ODBC_DATASOURCE /E $STOP_ON_DDL_ERROR /G $GRANTEE /B $TABLESPACE /X $INDEX_TABLESPACE /M $TABLE_NAME /L $LOG_FILENAME /Z $UCS2_DATABASE

    where:

    • TABLEOWNER = Tableowner of the database (Required)
    • TABLE_PASSWORD = Password of the tableowner of the database (Required)
    • ODBC_DATASOURCE = Data source of the database (Default environment variable: SIEBEL_DATA_SOURCE)
    • STOP_ON_DDL_ERROR = Stop on DDL Error (Default: Y)
    • GRANTEE = Grantee for tables
    • TABLESPACE = Name of the tablespace that you are moving the table to
    • INDEX_TABLESPACE = Name of the index space that you are moving the table to
    • TABLE_NAME = Table Name Like Support (Default: N)
    • LOG_FILENAME = Name of the log file (The default name is ddlmove.log.)
    • UCS2_DATABASE = (Default: N)

      NOTE:  If there are problems reported by the sizing utility, you must resolve the tablespace page sizes before you proceed with the upgrade.


 Upgrade Guide for UNIX
 Published: 20 October 2003