Siebel CRM Part 12: Upgrading a Non-Development Database

In the last two articles we covered the process of upgrading a development database. The steps involved were as follows: Upgrade the Development Database. Run the incremental merge. Resolve the conflicts. Run the post-merge utilities. Update the physical database with the custom objects. The steps above are only required to upgrade a development database. This article covers the upgrade process

In the last two articles we covered the process of upgrading a development database. The steps involved were as follows:

  1. Upgrade the Development Database.
  2. Run the incremental merge.
  3. Resolve the conflicts.
  4. Run the post-merge utilities.
  5. Update the physical database with the custom objects.

The steps above are only required to upgrade a development database. This article covers the upgrade process for non-development databases which will involve the Test, User Acceptance Testing and Production instances. The primary difference between the two upgrade methodologies is that for non-development instances, it is a single step upgrade as opposed to the multiple steps performed for the development instance.

Pre-Upgrade Tasks

There are a lot of steps which need to be completed before the actual upgrade is started. Most of these have been covered in previous articles, however the salient points are highlighted here again.

Server Shutdown

Before starting the upgrade, we need to make sure that the entire enterprise is shut down and all the services are disabled.

  1. Shut down all Siebel server services.
  2. Disable the Siebel Services (This is done because the installer restarts these services after the upgrade. We do not want this to happen.).
  3. Shut down the Siebel Gateway Server Service.
  4. Disable the Gateway Server Service.
  5. Shut down the World Wide Web Publishing service and the IIS Admin services on the webservers.
  6. These services must not be started till all the activities are completed.

Application Server Upgrade for Siebel 8.1.1.X Customers

The 9th article in the series (Upgrading Siebel application Servers for Siebel 8.1.1.X users) covered the upgrade process for the application servers. These steps must be performed before the upgrade is started.

Database Tasks

The following tasks need to be performed before any further changes are made.

  1. Take a full database backup for the instance being upgraded.
  2. Ensure that the NLS sort parameter is set to Binary.
  3. Pctincrease on the tablespace should be high to avoid too many extents.
  4. Pctfree must be 30 or higher on the large tables. Typically tables like S_CONTACT, S_EVT_ACT, etc.
  5. DB_CACHE_SIZE: Set this parameter to a minimum of 394264576, higher would be better.
  6. SORT_AREA_SIZE: Set this parameter to a minimum of 1524288. Higher would be better.
  7. UNDO_MANAGEMENT should be set to auto.
  8. The following needs to be performed for the ODBC connection on the Windows server from which the upgrade is being run. If we take the Amazon setup, this would be the server named Siebel Web_Gateway_Server which has the Database Configuration utilities installed on it.
    1. Start the registry editor (regedit).
    2. Navigate to the following location:

      HKEY_LOCAL_MACHINE\Software\Systemwow64\ODBC\ODBC.INI\ODBC_Name (Please refer to the installation instructions for Siebel Tools where this is created) where the ODBC_Name is the ODBC name for the Oracle Database.

    3. In the data display pane, verify that the following entries are present:
      Name                                     Type                 Data
      ColumnsAsChar                    REG_SZ          1
      ColumnSizeAsCharacter      REG_SZ          1
    4. If these entries are not present, then right-click in the data display pane, and choose New, and then String Value to add them.
    5. Step off the ODBC_Name and return to it. Verify that the two new entries are present and correct.
    6. Close the Registry Editor and reboot.

Backup of S_LST_OF_VAL, S_SRM_ACTION, S_SRM_ACT_PARAM_S_SRM_REQUEST

It is recommended that the following tables be backed up so that none of the transactional data is lost during the upgrade. The S_LST_OF_VAL table is extremely important and must be backed up. These tables are purged and recreated during the upgrade process and custom values are de-activated. To back up these tables the following steps can be used:

  1. From the Windows command prompt, navigate to <siebsrvr>\bin directory.
  2. From this directory, execute the following command to run Siebel DATAEXP utility (replacing $tokens with actual values that represent the environment):
    dataexp /u SADMIN /p $Password /c "$ODBCDataSource" /d SIEBEL /f$DataFileToExport.dat /l $LogFile.log
  3. When prompted Type S_LST_OF_VAL, and hit Enter.
  4. The export is complete when the utility prompts you for a table name again.
  5. Repeat steps 2 to 5 for S_SRM_ACTION, S_SRM_ACT_PARAM and S_SRM_REQUEST.
  6. Close the command window, and check the log file for errors, and verify that the data files were created.

Additional Recommended Tasks

The following additional tasks are recommended:

  1. Take a backup of all the runtime events. The upgrade process introduces a lot of new runtime events which cause a tremendous load on the server once it is up and running. The new runtime events will need to be deactivated if not required.
  2. Deactivate all workflow processes. This ensures that runtime event actions associated with old workflows are cleaned up properly.
  3. Verify that all tasks with the status of QUEUED are removed from S_SRM_REQUEST. The upgrade process does not clear these.

Upgrade Prerequisites

Once the tasks above are complete, we can start the tasks which are mandatory before we start the database upgrade.

Regenerating the Schema.ddl and Custrep.dat Files

The development upgrade creates two files called custrep.dat and schema.ddl. These will change as the errors in the repositories are fixed post the development instance upgrade. The files will need to be regenerated before we start the Non Development upgrade.

Regenerate Schema.ddl

  1. On the Siebel Server (Development) where the Siebel Database Configuration utilities are installed (Siebel Web_Gateway_Server in our sandbox), open a command prompt and navigate to the <Siebsrvr>\BIN folder.
  2. Execute the following command:
    ddldict /u SADMIN/p <SADMIN_PASSWORD>/c <ODBC_CONNECTION> /d SIEBEL /f D:\Siebel\15.0.0.0.0\ses\dbsrvr\ORACLE\schema.ddl /e y /a y /l SiebelLogDir\sch_dict.log /n
    "Siebel Repository" /t dcir
  3. This will create the Schema.ddl file which holds the table structure.

Regenerate Custrep.dat

  1. On the Siebel Server (Development) where the Siebel Database Configuration utilities are installed (Siebel Web_Gateway_Server in our sandbox), open a command prompt and navigate to the <Siebsrvr>\BIN folder.
  2. Execute the following command:
    repimexp.exe /A E /G ALL /u SADMIN /p <SADMIN_PASSWORD>/C <ODBC_NAME> /D SIEBEL /R "Siebel Repository" /F "D:\Siebel\8.1.1.14.0\ses\dbsrvr\oracle\custrep.dat"

This will export the new customized repository file.

Copy the Files Created

  1. Navigate to D:\Siebel\15.0.0.0.0\ses\dbsrvr\ORACLE.
  2. The two files which were created in the previous steps must be copied to the instance which is being upgraded, on the server which has the database configuration utilities installed.
  3. Please keep in mind that the instance where these files are being copied to must have already been upgraded.

Siebel Tools Tasks

The following tasks need to be done before starting the upgrade.

  1. Connect to the server using Siebel tools (please ensure that the Siebel tools version is the same version as the version being upgraded from).
  2. Open “Repository” in the object explorer.
  3. Ensure that there is only one repository in the database (Siebel Repository). All other repositories must be deleted. The upgrade will fail if there are multiple repositories.
  4. Rename the “Siebel Repository to “Prior Customer Repository”.
  5. Close and log off from tools.

This completes the tasks required for the upgrade and we can now start the Database upgrade.

Database Upgrade to Siebel 15 (Non-Development Database Only)

Before we start our development database we need to keep the following values handy as they are asked for during the upgrade process.

  1. The SADMIN Password.
  2. The SIEBEL Password.
  3. The Index Space name (SBL_INDX in our sandbox environment)
  4. The Tablespace name (SBL_DAT in our sandbox environment)
  5. The ODBC Name (DEVENT81_DSN in our sandbox environment).
  6. The Siebel Version being upgraded from. For example SIA (Siebel Industry Applications) Version 8.0. (For the purpose of this article, we assume it is SIA).

Navigate to the Siebel Enterprise Server program folder and Click on Database Server Configuration.

The following wizard opens up:

The installation directories are already filled in, please verify the values and click on Next.

Choose the correct Database platform (Oracle in our case) and click on Next.

Choose “Upgrade Database” on the Siebel Database operation window and click Next.

Choose Production for the Environment Type and click on Next. Please bear in mind that “Production” is chosen for any non-development database.

Choose “Upgrade Siebel Database Schema (upgrep + upgphys)” and click on Next. (Please note that for non-development upgrades the processes are combined and not separate like for the development upgrade.) The option “Prepare for Production Upgrade” is used only for Siebel 7.5.3 users and does not need to be used for any other versions.

Select “Siebel Industry Application” and click on Next.

Choose the correct SIA version and click on Next.

Choose the correct Encoding (UNICODE, in the case of our sandbox) and click on Next.

Put in the correct ODBC name at the prompt and click on Next.

Put in the SADMIN username and passwords in the Database User Name authentication screen. Click on Next once done.

Put in the SIEBEL username and passwords in the Database Table Owner authentication screen. Click on Next once done.

Enter the Index Table Space name (SBL_INDX in our sandbox) and the Table space name (SBL_DAT) in our sandbox and click on Next.

Choose the correct Database Server Operating system (Windows in the case of our sandbox) and click on Next.

Irrespective of whether parallel indexing is enabled or not, choose the parallel indexing option. This will cut down the upgrade time from 1 hour per major index to around 10 minutes. Click Next once done.

Leave the role as SSE_ROLE and click Next.

Accept the default for the log output directory and click on Next. Please make a note of the output directory. This is an extremely important folder for 2 reasons:

  1. If the upgrade fails, this is the folder which holds the upgrade wizard log files. The log files will tell you at what step the upgrade failed so that the errors can be fixed and the upgrade restarted.
  2. The folder also contains the state of the upgrade. When we restart the wizard, the state files are read and the wizard will start from where it left off rather than from the start.

Click on apply changes now and click Next.

Check the summary and click on Next to start the upgrade.

Click on OK for the upgrade wizard.

This starts the database upgrade. On average the non-development database upgrade takes approximately 5-9 hours to complete. This is obviously based on the hardware in play and the performance of the database itself.

Verifying the Upgrade Process

Once the database upgrade completes, Siebel provides a set of tools to verify the database upgrade. Open a command prompt and follow the steps mentioned below:

Navigate to the Siebel folder “D:\Siebel\15.0.0.0.0\ses\siebsrvr\bin” and execute “logparse /s D:\Siebel\15.0.0.0.0\ses /g ENU /r upgrep_dev_80 /l logparse.log”.

The utility goes through all the log files and generates a Summary folder and a summary.html file in the <SIEBESRVR>\log\upgrep_dev_80 folder.

Open the summary.html file to verify that the upgrade has been successful.

This completes the article on the upgrade of the non-development database. This article also concludes the series on the Siebel upgrade.