HP Service Manager

For the supported Windows® and Linux® operating systems

Software Version: 9.41

Customized output from:

Interactive Applications Upgrade Guide

Document Release Date: June 2016

Software Release Date: August 2015

HP logo

Legal Notices

Warranty

The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein.

The information contained herein is subject to change without notice.

Restricted Rights Legend

Confidential computer software. Valid license from HP required for possession, use or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor's standard commercial license.

Copyright Notice

© 1994-2015 Hewlett-Packard Development Company, L.P.

Trademark Notices

Adobe® is a trademark of Adobe Systems Incorporated.

Microsoft® and Windows® are U.S. registered trademarks of Microsoft Corporation.

Oracle and Java are registered trademarks of Oracle and/or its affiliates.

UNIX® is a registered trademark of The Open Group.

Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.

For a complete list of open source and third party acknowledgements, visit the HP Software Support Online web site and search for the product manual called HP Service Manager Open Source and Third Party License Agreements.

 
 
 
 

Interactive Applications Upgrade Guide

Select the current version of your Service Manager applications

SM 7.1x
SM 9.2x
SM 9.3x without Process Designer Content Pack (PDCP) installed
SM 9.3x with Process Designer Content Pack 9.30.2 or 9.30.3 (PDCP3 or PDCP4) installed
Welcome to the HP Service Manager 9.41 Interactive Applications Upgrade Guide. This guide enables you to select options that describe your Service Manager configuration and then view or print a customized upgrade guide that includes only the requirements and tasks that apply to you.

Start by choosing your current version of Service Manager applications from the options on the left.The HP Service Manager Upgrade Utility upgrades your applications to Service Manager 9.41 Classic or Codeless.

Select your RDBMS

SQL Server
DB2
Oracle

Select your operating system

Windows
Unix

View or print

Click View to view the upgrade guide online, or click Print to send the guide to a printer for printing.

Check your selections

The following steps are customized according to your selections. Check that your selections are correct.

 

If any selections are not correct, click Change.

Using this guide

This upgrade guide is interactive and enables you to view the upgrade instructions that are relevant for your Service Manager setup. You can change your selections any time by clicking the Change button at the top of the page. When you complete a step or task, you can click the check box to the right of the heading to mark it as completed. To collapse or expand a section, click the icon to the left of the heading.

The bottom of the pages in the online version of this guide list the following identifying information:

  • Document Release Date, which changes each time the document is updated.
  • Software Release Date, which indicates the release date of this version of the software.

To check for updates, or to verify that you are using the most recent edition of this document, go to the HP Software Support Online web site. This site requires that you register for an HP Passport and sign-in. To register for an HP Passport ID, click the New users - please register link on the HP Passport login page. You will also receive updated or new editions if you subscribe to the appropriate product support service. Contact your HP sales representative for details.

Printing this guide

This guide will not print correctly if you attempt to print it using the Internet Explorer print feature. If you decide that you want to print this guide, click Print at the top of the page or at the bottom of the previous page where you made your selections. You can select to print out a hardcopy, or a PDF document (if you have an Adobe PDF printer installed on your machine).

Finding troubleshooting information

You can find troubleshooting information at the end of this guide.

Upgrade process overview

The HP Service Manager Upgrade Utility upgrades your applications to Service Manager 9.41.

Note: You can upgrade to interim application releases by using the Applications Patch Manager. For more information, see the Applications Patch Manager Guide.

You use three environments to complete the upgrade process: your current production environment, a new development environment, and a new test environment. You will duplicate your production environment to create the development and test environments. Run the out-of-box upgrade and create the custom upgrade on the development environment, and then run and test the custom upgrade on the test environment before you apply it to your production environment. The figure below provides an overview of the steps in the upgrade process.

Upgrade process overview

Plan the upgrade

Before you begin an upgrade, HP recommends that you complete the following steps:

  1. Review this upgrade guide to familiarize yourself with all of the requirements.

  2. Understand that you should be an experienced system administrator who is familiar with your installation and knows how the existing Service Manager file system operates, how the application files function, how to compare records, and how to use the Rapid Application Development (RAD) environment if you have tailored RAD applications. You can also contact HP Software Support for help with troubleshooting upgrade errors.
  3. Make sure that you are familiar with the tools available and have access to the documentation:

    • Service Manager tools: Database Manager, Database Dictionary, Display Application, Forms Designer, System Definition.
    • RDBMS: Know how the Service Manager file system interacts with the relational database management system (RDBMS) that stores your data.
    • Documentation resources:

      • Service Manager 9.41 Help Center for information about database dictionaries, Database Manager, Forms Designer, Request Management, and the Display application. You can access the Help Center when you install the Help server.
      • HP Service Manager Interactive Installation Guide for client and server installation instructions.
      • HP Service Manager Release Notes for information about Software Change Requests (SCRs), enhancements, and known issues. The release notes are available on the HP Software Support Online web site.
  4. Meet the system requirements:

    • Your RDBMS version, operating system, and client and server environment must meet all criteria listed in the HP Service Manager 9.41 Support Matrix.
    • Convert all database tables and fields from lowercase to uppercase: Service Manager does not generate lowercase table names or field names. Therefore, if your database is case sensitive, you must convert all tables and fields from lowercase to uppercase before you can upgrade the server and client or applications.

    • Do not install Service Manager or the Upgrade Utility on an NFS-mounted partition. Service Manager generates significant database read/write activity, and an NFS-mounted partition is significantly slower than a local drive and can cause serious performance degradation.
    • Convert your RDBMS code page to Unicode. For more information, see your RDBMS vendor documentation.
  5. Perform a system health check: A well-maintained production system is the easiest to upgrade. Before starting the upgrade process, perform all regular maintenance on your production system.
  6. Develop an upgrade strategy:

    HP strongly recommends that you allow the Upgrade Utility to modify your RDBMS tables for you. If you chose not to allow the Upgrade Utility to modify your RDBMS tables and want to modify your tables manually, you can use the SQL Compare utility to determine the tables that you need to update.

    Tailored systems: A list of tailored files can help you resolve differences quickly between your existing files and new files. You can also use the SQL Compare utility to determine how files differ. Customization affects the upgrade process the following ways:

    Object changes: The Upgrade Utility compares the objects in your database with their out-of-box versions and the corresponding objects provided from the upgrade package. The Upgrade Utility compares objects by their signatures. Each data record in Service Manager has a unique signature, which changes once that data record is updated.

    • If an object in your database that has been tailored does not match the corresponding object that is provided by the upgrade package, the following behaviors apply:

      • If this is your first upgrade, the Upgrade Utility tries to merge the object from the upgrade package with your tailored object. If the merge is successful, the Upgrade Utility marks the new merged object as "Auto Merged." If the merge fails, the Upgrade Utility marks the object as "Renamed." In both cases, the Upgrade Utility prefixes the object from the upgrade package with "NEW941," and then copies the object to your datebase and prefixes that object as "PRE<old_version_number>". For example, an object from applications version 7.11.000 will be prefixed with "PRE7.11.000."
        If this is your first upgrade, the Upgrade Utility tries to merge the object from the upgrade package with your tailored object. If the merge is successful, the Upgrade Utility marks the new merged object as "Auto Merged." If the merge fails, the Upgrade Utility marks the object as "Renamed." In both cases, the Upgrade Utility prefixes the object from the upgrade package with "NEW941," and then copies the object to your datebase and prefixes that object as "PRE<old_version_number>". For example, an object from applications version 9.20.000 will be prefixed with "PRE9.20.000."
        If this is your first upgrade, the Upgrade Utility tries to merge the object from the upgrade package with your tailored object. If the merge is successful, the Upgrade Utility marks the new merged object as "Auto Merged." If the merge fails, the Upgrade Utility marks the object as "Renamed." In both cases, the Upgrade Utility prefixes the object from the upgrade package with "NEW941," and then copies the object to your datebase and prefixes that object as "PRE<old_version_number>". For example, an object from applications version 9.30.000 will be prefixed with "PRE9.30.000."
        If this is your first upgrade, the Upgrade Utility tries to merge the object from the upgrade package with your tailored object. If the merge is successful, the Upgrade Utility marks the new merged object as "Auto Merged." If the merge fails, the Upgrade Utility marks the object as "Renamed." In both cases, the Upgrade Utility prefixes the object from the upgrade package with "NEW941," and then copies the object to your datebase and prefixes that object as "PRE<old_version_number>". For example, an object from applications version 9.31.0022 PDCP4 will be prefixed with "PRE9.31.0022 PDCP4."
      • If this is a custom upgrade, the Upgrade Utility marks the object from the upgrade package as “Forced,” and then copies the object in its revision.
    • If an object in your database has been tailored, but the out-of-box version matches exactly the corresponding object from the upgrade package, the following behaviors apply:

      • If this is your first upgrade, the Upgrade Utility keeps your local version, even if your version has been tailored and marks your local version as “Kept Customer”.
      • If this is a custom upgrade, the Upgrade Utility marks your local version object as “Already Current.”
    • If an object in your database has not been tailored, but does not match the corresponding object provided from the upgrade package, the following behaviors apply:

      • If this is your first upgrade, the Upgrade Utility overwrites the object in your database with the object from the upgrade package, and marks the object as “Upgraded.”
      • If this is a custom upgrade, the Upgrade Utility marks the object from the upgrade package as “Forced,” and then copies the object in its revision.
    • If an object in your database matches exactly the object provided from the upgrade package, the Upgrade Utility marks the object as "Already Current" regardless of whether this is the first upgrade or a custom upgrade.
    • If an object from the upgrade package does not have a corresponding object from your database, the Upgrade Utility adds the object to your database and marks the object as "Added" regardless of whether this the first upgrade or a custom upgrade.
    • If an object from your database does not have a corresponding object from the upgrade package, the Upgrade Utility ignores it.

    Dbdict changes: The Upgrade Utility automatically adds new dbdict and merges new fields to existing dbdicts. The Upgrade Utility does not delete any existing field. For field and key changes, check "Field mapping changes" and "Key changes."

    Field changes: Normally the Upgrade Utility applies field mapping changes automatically, but there may be some exceptions. For example, when a length change is required, the Upgrade Utility automatically expands the length mapping. However, if the field mapping is a LOB-type change, the Upgrade Utility will not the change the type mapping. For detailed exceptions, check SQL Field Compare results before the upgrade and the except.log file after the upgrade.

    Key changes: Normally the Upgrade Utility applies key changes automatically, but there may be some exceptions. For example, the Upgrade Utility automatically adds a new key and updates the existing key of the pre-upgrade out-of-box version. However, if a Unique key has been tailored, the Upgrade Utility will not apply the key change. For detailed exceptions, check the SQL Unique Key Compare Results before the upgrade and the except.log file after the upgrade.

    Localized systems: The Upgrade Utility supports upgrading systems that have language packs applied. The upgrade contains the latest language pack records and will upgrade any language pack record to the latest version or flag any changed records for reconciliation.

    Backups: HP highly recommends that, at a minimum, you back up the development environment database after you apply the upgrade and after you resolve conflicts.

  7. Note the following new features provided by the release of Service Manager 9.41 require an application upgrade:

    • Enhanced Service Desk, Incident Management, Problem Management, Change Management, Request Fulfillment Management, and Service Level Management based on Process Designer (provided since Service Manager 9.40)
    • Process Designer framework
    • Smart Analytics (provided since Service Manager 9.40)
    • Mobile Applications
    • Service Request Catalog (SRC)
    • Case exchange
    • Simplified interaction

    • Logical Name

    • Global search

    • Service Manager Collaboration

    • Accessibility for the embedded Service Manager Calendar
    • Service Manager Reports (provided since Service Manager 9.40)
    • Service Manager Survey (provided since Service Manager 9.40)
    • Entity Relationship Diagram (ERD and Data integrity check)
    • Knowledge Management SOLR search engine (provided since Service Manager 9.30)
    • The Primary Key and Not Null constraints (provided since Service Manager 9.32)

Upgrade the server and the client on the production environment

Make sure that you have upgraded your server and the client to the latest version before you attempt to run an application upgrade. This allows the upgrade utility to call the new functions in the latest server and client and to take full advantage of all of the application features following an upgrade.

To upgrade your applications to version 9.41, you must first perform a server and client upgrade. The applications upgrade to Service Manager 9.41 depends on features in the 9.41 platform (server and client) .

To upgrade your applications, you must first perform a server and client upgrade to 9.41 platform (server and client).

  • To obtain the latest client, install the client from the Service Manager 9.41 release, and follow the instructions in the Service Manager 9.41 Interactive Installation Guide.
  • To obtain the latest server, install the Service Manager 9.40 server from the Service Manager 9.40 installation DVD, and then install the Service Manager 9.41 server patch. For details, see the Service Manager 9.41 Interactive Installation Guide.

If you have deployed Knowledge Management, you must also upgrade the Knowledge Management Search Engine to the new version. Follow the instructions in the HP Service Manager 9.41 Knowledge Management Search Engine Guide to install the latest search engine.

Enlarge the page size for DB2 RDBMS table spaces

If you are running on a DB2 RDBMS, make sure that the buffer size for the systemperform table is at least 32K.

Run the following SQL statements to enlarge user space for the affected table, where USER32K represents the name of the larger-sized user space that has a buffer size larger than 4K, and press Enter after each statement:

create table SYSTEMPERFORMM1_TEMP like SYSTEMPERFORMM1 in USER32K
commit
insert into SYSTEMPERFORMM1_TEMP (select * from SYSTEMPERFORMM1)
commit
drop table SYSTEMPERFORMM1
commit
rename table SYSTEMPERFORMM1_TEMP to SYSTEMPERFORMM1
commit

See your DB2 documentation for more information.

Duplicate your production environment and create a development environment

Duplicate your current Service Manager production environment and create a development environment for running the out-of-box upgrade and creating the custom upgrade. Set up the duplicate environment to match your production server exactly. Make sure that the operating system and service pack level on the development environment is identical to the production server.

  1. Identify a server to use for the development environment.

  2. Make sure that your development system meets all of the upgrade requirements:

    • Your RDBMS version, operating system, and client/server environment must meet all criteria listed in the Service Manager 9.41 Support Matrix.
    • Do not install HP Service Manager or the Upgrade Utility on an NFS-mounted partition. HP Service Manager generates significant database read/write activity, and an NFS-mounted partition is significantly slower than a local drive and can cause serious performance degradation.
  3. Install the HP Service Manager 9.41 server and client on the development system, following the instructions in the HP Service Manager Installation Guide.
  4. Copy your existing production system data onto your development system.
  5. Make sure that you point the development server to your data copy on the development system.

Prepare the Service Manager server on the development environment

Before you proceed, make sure that you have upgraded your server and client to version 9.41.

To prepare the server for the upgrade, edit the Service Manager configuration (sm.cfg) and initialization (sm.ini) files. Note that you must return the sm.ini and sm.cfg files to their original state after the upgrade, so you may want to keep copies of the original files.

  1. Stop the Service Manager server.
  2. Open the Service Manager configuration file (sm.cfg) with a text editor.
  3. Comment out the sm system.start line to disable the #sm system.start background processes.
  4. Add sm -sync to the end of the file if it does not yet exist. This parameter starts the sync process, which identifies and releases locks owned by inactive processes and shared memory that is not in use.

  5. If the the sm.cfg file contains more than one instance of the sm -httpPort parameter, comment out all instances except for one. Each sm -httpPort parameter starts a Service Manager server process. The upgrade needs only one process. Comment out all other parameters. Commenting out the parameters disables all of the other Service Manager processes that are not required during an upgrade.
  6. Save and close sm.cfg.
  7. Open the Service Manager initialization (sm.ini) file with a text editor.
  8. Add the sessiontimeout:1200 parameter to the end of the file if it does not exist. If this parameter exists, update it to an appropriate value. This parameter defines the number of minutes that the server waits for a client signal before the server assumes that the client session has timed out and closes the connection. A value of 1200 sets the timeout to 20 hours (1200 minutes), a period that should be long enough for an upgrade phase to complete in a typical scenario.
  9. Add the heartbeatinterval:120 parameter to the end of the file if it does not exist. This parameter controls the client heartbeat frequency. If the server does not receive a heartbeat from the client within the time-out limit as defined by the sessiontimeout parameter, the server terminates the client. All unsaved data is lost and the client must establish a new connection.
  10. If you use HP-UX, add the JVMOption(#):-Xss6M JVM option to the end of the file if it does not exist. This parameter increases the Java virtual machine stack size to 6MB.

    When you add the parameter, replace the hash symbol (#) with an option number that does not exist in the sm.ini file. For example, if the file already contains a JVMOption(0) and JVMOption(1), add JVMOption(2):-Xss6M to the file.

  11. Replace the default shared_ memory:32000000 with shared_memory:96000000. This sets the shared memory size to 96MB. However, if you have a large database, you may need to allocate more shared memory to accommodate the upgrade processing.
  12. Disable IR keys by adding ir_disable:1 to the end of the file.
  13. Save and close sm.ini.
  14. Restart the Service Manager server by executing the sm.exe command in the Service Manager installation directory (for example, C:\Program Files (x86)\HP\Service Manager 9.41\Server\RUN).

Copy the application Upgrade Utility files to the development environment

Since the upgrade process needs read-write access to the Upgrade Utility files, you cannot run the upgrade directly from the installation package. Follow these steps to copy the Upgrade Utility files to the primary directory on the development system.

  1. Create an upgrade folder on the development system. For example, C:\temp\upgrade.

    Create an upgrade folder on the development system. For example, /tmp/upgrade.

    Note: If you connect to the development server from a client on a remote computer, make sure that you create the folder on the development server and not the client machine.

  2. Make sure that the Service Manager server process (sm) has write and execute privileges for the upgrade directory that you create.
  3. Extract the Service Manager application Upgrade Utility files to the upgrade folder. Make sure the extraction does not miss any Upgrade Utility files. Otherwise, the upgrade process will fail.

The Upgrade Utility includes these files:

  • AppUpgVersion.txt: Contains Upgrade Utility version and build number information to help you identify which application upgrade version you have available. For example:

    A version of "SM710-9.41.00xx v9.41 00xx Upgrade Build 00xx" indicates the following:

    • The Upgrade Utility upgrades Service Manager 7.10 and later releases to Service Manager 9.41.
    • The Upgrade Utility version number is 9.41.00xx.
    • The Upgrade Utility build number for this version is 00xx.
  • preupg.bin: Files that enable access to the Upgrade Utility features. The preupg.bin and transfer.bin upgrade files contain the applications and data to run the upgrade.
  • transfer.bin: Files that enable the upgrade to run. The preupg.bin and transfer.bin upgrade files contain the applications and data to run the upgrade on your development system.
  • sqlupgrade.unl: SQL Compare utility files.

    Note: preupg.bin includes the files in sqlupgrade.unl. To run SQL Compare, you do not need to load sqlupgrade.unl again after you load preupg.bin.

  • upgdbdct.dta: Temporary database dictionaries (dbdicts) needed for the SQL compare process.
  • upgrade.inf: Signature information for the upgrade objects.
  • upgrade-pd.inf: Signature information for the upgrade objects of Process Designer.
  • upgrade.mak: Signature definitions for the upgrade objects.
  • upgrade.str: Database dictionaries to be upgraded.
  • upgrade.ver: Version stamp for the upgrade.
  • *.dta (in the data or data-pd folder): The data files for each table. For example, upgradeactivityactions.dta and upgradeactivitytype.dta.
  • DeltaMigrationTool.unl: Delta Migration Tool files.
  • .zip (in the 3waymerge\oob folder): Each zip file includes the XML representation of the objects that have been signatured in the pre-upgrade out-of-box version for the Three-Way Merge tool.

    Note: Only five base versions are included, namely, SM7.10, SM7.11, SM9.20, SM9.30, and SM9.30 (with Process Designer Content Pack 9.30.3 installed).

Purge any existing upgrade files on the development environment

Remove any upgrade files from previous versions of Service Manager. You can run the purge tool to remove temporary objects that were generated by the Upgrade Utility. However, the purge tool may not clean up some artifacts that could be left from past upgrades. Before running the purge tool, you can search the Upgrade Results report for records with a result type of "Forced" to find left over artifacts. You can export the list of objects to an Excel spreadsheet so that you can refer to the list when you manually delete the objects from your system.

To view the Upgrade Results report, follow these steps:

  1. Log on to Service Manager with a system administrator account.
  2. Type smupgrade in the Service Manager client command line and press Enter.
  3. Click View Upgrade Results and Merge Conflicts.
  4. Select Forced in the Result drop-down list, and then press Enter.
  5. If you want to export the to a Microsoft Excel spreadsheet, from the Upgrade Results report, click the drop-down options menu and select Export to Excel. You can also select File > Print from the Upgrade Results report to print the list of records.

To run the purge tool, follow these steps:

  1. Type *aapm.upgrade.purge in the Service Manager client command line and then press Enter.
  2. Select I’m done, and I want to remove the upgrade files completely.
  3. Click OK to purge any existing upgrade files.
  4. Click OK again to exit the Purge Routine Completed dialog box.

Note: If you have converted unique keys to primary keys, the system will display error messages when purging the upgrade files. Ignore the error messages.

Load the application upgrade files to the development environment

  1. Log on to Service Manager with a system administrator account.

    Note: Select English as the language when logging into the system for an upgrade.

  2. Click Window > Preferences > HP Service Manager and clear the Client side load/unload check box.

    Caution: Failure to disable the Client side load/unload option causes the upgrade process to fail.

  3. Type db in the Service Manager client command box, and press Enter.
  4. From the Database Manager drop-down options menu, select Import/Load.
  5. In the File Name field, navigate to the upgrade directory that you created, and double-click preupg.bin. For example, C:\temp\upgrade\preupg.bin.

    In the File Name field, navigate to the upgrade directory that you created, and double-click preupg.bin. For example, /tmp/upgrade/preupg.bin.

  6. Click Load FG.

    Note: If you have converted unique keys to primary keys, follow these steps:

    1. Load the preupg.bin file using Service Manager Database Manager.
    2. Purge the existing upgrade files again. The system no longer displays error messages.
    3. Load the preupg.bin file again.
  7. Type smupgrade in the Service Manager client command line, and press Enter.
  8. Click Load Upgrade Utility File - transfer.bin.
  9. Type the full path to the upgrade folder that you created. For example, C:\temp\upgrade.

    Type the full path to the upgrade folder that you created. For example, /tmp/upgrade.

  10. Click Next. The system loads transfer.bin and performs various mapping activities against select tables. Service Manager displays a "Transfer files loaded" message when the load is complete.
  11. Log out of the client and stop the Service Manager service.
  12. Restart the Service Manager service and log on to the client.

Use the data scan utility

Before you run the upgrade, you use the data scan option in the Upgrade Utility to scan a portion of your data set for certain types of data that may cause issues following the upgrade. The data scan logs to the datascan.log file basic information about the scan results, such as how many data records it scanned and which records it updated automatically. The scan logs to the sm.log file details about which problematic records it corrected. The data scan option enables you to scan for two types of problematic data:

  • Null values in fields applied with certain keys.
  • Mismatches between the data type defined on the field and the data type of the field value.

The data scan does not allow you to specify the tables to scan. The tables that are scanned include the list of tables noted in the latest patches record. To view the patches record, click SERVICE PACK > Update Patch Definitions in the Upgrade Utility. For more information about the rtecall functions that the data scan uses and about how you can implement these functions to scan for additional tables, such as probsummary, see the HP Service Manager Programming Guide.

  1. Log on to HP Service Manager as a system administrator.
  2. Type smupgrade in the Service Manager command line, and then press Enter.
  3. In the DATA SCAN UTILITY menu, Click San for and Fix Incorrect Data.
  4. Click Next and follow the instructions.

If you want to modify the automatically fixed data to your own values, follow the instructions below.

Change null values disallowed by keys

The data scan option scanned for null values that violated the restrictions imposed by a No Nulls or Unique key. The utility then removed the record if null values violated a Unique key or replaced one of the null values with a default value if the null values violated a No Nulls key.

To change automatically modified values to your own values, follow these steps:

  1. Open the sm.log file in the upgrade folder.
  2. Search for deleted a record or updated a record to locate a message that resembles either of the followings:

    • scan: scan for nulls, deleted a record that contains null values on a "Unique" key field, table = TABLE_NAME, record = RECORD_CONTENTS

      This message indicates that the utility removed a record. TABLE_NAME shows the name of the table, and RECORD_CONTENTS shows all of the fields and values of the removed record.

    • scan: scan for nulls, updated a record that contains null values on a "No Nulls" key field, table = TABLE_NAME, key = RECORD_IDENTIFIER

      This message indicates that the utility replaced a null value with a default value. TABLE_NAME shows the name of the table, and RECORD_IDENTIFIER shows the primary key and its value for the updated record.

  3. Change the automatically modified value to your own value or restore the removed record with valid field values, either by using the HP Service Manager client or by directly updating data in the RDBMS.
  4. Search for the next occurrence of deleted a record or updated a record to fix the next automatically modified record.
  5. Continue to follow step 2 through step 4 to change all of the values that the utility updated.

Change data type mismatches

The data scan option scanned for mismatches between the data type defined on the field and the data type of the field value.

To change automatically modified values to your own values, follow these steps:

  1. Open the sm.log file in the upgrade folder.
  2. Search for scan for inconsistent data types, table to locate a message that resembles either of the followings:

    • scan: scan for inconsistent data types, table: "TABLE_ NAME", key: "RECORD_ IDENTIFIER", field: "FIELD_ NAME", value "ORIGINAL_VALUE", type: ORIGINAL_TYPE, value changed to: "NEW_VALUE", type: NEW_TYPE.

      This message indicates that the utility changed the value of a field in a record:

      • TABLE_NAME shows the name of the table.
      • RECORD_IDENTIFIER shows the primary key and its value of the updated record.
      • FIELD_NAME shows the name of the field that was updated.
      • ORIGINAL_VALUE shows the original value of the field that was updated.
      • ORIGINAL_TYPE shows the original type of the field that was updated.
      • NEW_VALUE shows the new value of the field that was updated.
      • NEW_TYPE shows the corrected type of the field that was updated.
    • scan: scan for inconsistent data types, table: "TABLE_ NAME", key: "RECORD_ IDENTIFIER", field: "FIELD_ NAME", value "ORIGINAL_VALUE", type: ORIGINAL_TYPE, type changed to NEW_TYPE.

      This message indicates that the utility changed the type of a field in a record:

      • TABLE_NAME shows the name of the table.
      • RECORD_IDENTIFIER shows the primary key and its value of the updated record.
      • FIELD_NAME shows the name of the field that was updated.
      • ORIGINAL_VALUE shows the original value of the field that was updated.
      • ORIGINAL_TYPE shows the original type of the field that was updated.
      • NEW_TYPE shows the corrected type of the field that was updated.
  3. Change the automatically modified value to your own value or restore the removed record with valid field values, either by using the Service Manager client or by directly updating data in RDBMS.
  4. Search for the next occurrence of scan for inconsistent data types, table to fix the next automatically modified record.
  5. Continue to follow step 2 through step 4 to change all of the values that the utility updated.

Run the SQL Compare utility on the development environment

The SQL Compare utility is an informational tool that you can use to compare your existing table fields and unique key information with that in Service Manager 9.41. It reports new and modified fields and unique keys that will merge into the existing tables. You can use the list of the fields and unique keys produced by SQL Compare to determine whether any fields or unique keys in your current system differ from those in the new version. You can also use the report to determine which new fields and unique keys you must add to RDBMS-mapped files if you choose to make the changes manually during the application upgrade.

After running the SQL compare utility on the table fields, refer to the following table for the result types and the recommended actions.

Result type Recommended actions
(Null) The related field is on the id field in the licenseinfo dbdict. No further action is necessary.
Nonexistent in HP Service Manager 9.41 fresh installation This field is added by tailoring. No further action is necessary.
Not to be modified to other field type by the Upgrade Utility Manually modify this field type according to the matching solution described in Data type mismatches.
Not to be modified to other field database type by the Upgrade Utility Manually modify this field type according to the matching solution described in Data type mismatches.
Not to be moved to alias table by the Upgrade Utility Manually modify this field type according to the matching solution described in Data type mismatches.
To be modified by the Upgrade Utility This field type modification will be done automatically by the Upgrade Utility during the upgrade process. You can also manually modify this field type before the upgrade to improve the upgrade performance.
To be modified by the Upgrade Utility, and the original field name xxxx will be renamed to xxxx.old This field type modification will be done automatically by the Upgrade Utility. No further action is necessary.
To be added by the Upgrade Utility This new field will be added automatically by the Upgrade Utility during the upgrade process. You can also manually add this new field manually before the upgrade to improve the upgrade performance.
Result type Recommended actions
Nonexistent in HP Service Manager 9.41 fresh installation This field is added by tailoring. No further action is necessary.
Not to be modified to other field type by the Upgrade Utility Manually modify this field type according to the matching solution described in Data type mismatches.
Not to be modified to other field database type by the Upgrade Utility Manually modify this field type according to the matching solution described in Data type mismatches.
Not to be moved to alias table by the Upgrade Utility Manually modify this field type according to the matching solution described in Data type mismatches.
To be modified by the Upgrade Utility This field type modification will be done automatically by the Upgrade Utility during the upgrade process. You can also manually modify this field type before the upgrade to improve the upgrade performance.
To be modified by the Upgrade Utility, and the original field name xxxx will be renamed to xxxx.old This field type modification will be done automatically by the Upgrade Utility. No further action is necessary.
To be added by the Upgrade Utility This new field will be added automatically by the Upgrade Utility during the upgrade process. You can also manually add this new field manually before the upgrade to improve the upgrade performance.

After running the SQL compare utility on the table unique keys, refer to the following table for the result types and the recommended actions.

Result type Recommended actions
Nonexistent in HP Service Manager 9.41 fresh installation This key normally is added by tailoring. Check this key to see whether it includes any field of added primary key or unique key.
Exist in Old OOB, and will be removed by the Upgrade Utility This key exists in Old OOB only, but does not exist in HP Service Manager 9.41. The Upgrade Utility will remove this key automatically. No further action is necessary.
To be added by the Upgrade Utility This key does not exist in Old OOB, but exist in HP Service Manager 9.41. The Upgrade Utility will add this key automatically. No further action is necessary.
To be ignored by the Upgrade Utility The field is added as a unique key because Service Manager does not support operations on tables with primary keys when the application version is earlier than 9.32. You can manually change the key type to primary key after the system upgrade.

Note: If you are going to accept the new dbdicts and the changes made to the dbdicts in the upgrade, you do not need to run this utility.

To run the SQL compare routine, follow these steps:

  1. Log on to Service Manager as a system administrator.
  2. Type db in the client command line and press Enter to open Database Manager.
  3. From the Database Manager drop-down options menu, select Import/Load.
  4. In the File Name field, navigate to the upgrade directory that you created when you copied the Upgrade Utility to your development environment, and double-click sqlupgrade.unl.
  5. Click Load FG. Service Manager loads sqlupgrade.unl into your development environment.
  6. Type smupgrade in the client command box and press Enter.
  7. Click Run SQL Compare Utility.
  8. Type the full path to the upgrade folder that you created. Include the final back slash (\) in the path. For example, C:\temp\upgrade\.

    Type the full path to the upgrade folder that you created. Include the final forward slash (/) in the path. For example, /tmp/upgrade/.

  9. Click Run. SQL Compare displays the message, "Process Complete. Please check for any additional messages." Service Manager adds the results of the SQL Compare process to the sqlupgrade record. This file resets each time you run SQL Compare.

View the SQL Compare Utility results and make necessary changes on the development environment

SQL Compare returns messages for dbdict mappings that contain new or modified fields. You can update the dbdicts to contain the fields specified by SQL Compare before you begin the application upgrade.

To view the SQL compare results of the table fields, follow these steps:

  1. Type smupgrade in the HP Service Manager command line, and then press Enter.
  2. Click View SQL Field Compare Results.
  3. Click Search. The sqlupgrade report lists each database dictionary file that requires changes. When you select a file in the top pane, Service Manager displays in the bottom pane any new fields that you must add to the SQL database and update the existing Service Manager SQL mapping in the database dictionary if you are updating your RDBMS mapped system manually.
  4. Add the new fields to the appropriate database dictionary and SQL database. The sqlupgrade record provides the following information for each new or modified field:

    • File Name: The exact file name which delegates the database dictionary.
    • Field Name: The exact field name to add or modify to the associated database dictionary.
    • Field Structure: The field structure in the database dictionary.
    • Field Type: The field type in the database dictionary.
    • Field Level: The field level in the database dictionary.
    • Result Type: The actions happened or will happen to this field.
    • Field Alias Of: If this is an alias field, it contains the name of the primary field that it is an alias of. Otherwise, this field is blank.
    • Field SQL Table Alias: The SQL table alias of this field in the database dictionary.
    • Field SQL Name: The SQL name of this field in the database dictionary.
    • Field SQL Type: The SQL type of this field in the database dictionary.
    • Field SQL RC: The encoding format of this field in the database dictionary.
    • Exceptions: The exceptions that occurs when adding or modifying this field.

    The new fields must exist in the database dictionary and the SQL database. If you are updating your RDBMS system manually, you must add them to the database and update the existing Service Manager SQL mapping. When you update a table in sqlsystemtables, add fields only through the database dictionary. Modifying the SQL mapping damages the file structure of the table.

    In most cases, you should add the new field to the descriptor structure. However, sometimes the Structure field contains something other than the word "descriptor". When this occurs, add the new field to the appropriate location:

    • If the field resides in another structure: Check the cm3r dbdict. There is a "middle" field of structure type.
    • If the field is an array: If the field is an array, the field name appears twice in the new field list. Check any field of array type. The root field has array type, but the same name field normally has the real type (for example, VARCHAR(60)). Use the first entry to determine the structure where you should add the array. The Structure field in the second entry reflects both the structure for the array (unless it uses the descriptor structure) and the name of the array itself.
    • The field is part of an array of structures: Check the kmcategory dbdict permission field, which is a structured array field.

      Note: When adding fields to a structured array, add them in the same order as they appear in the sqlupgrade record.

  5. Process the NVARCHAR SQL type.

    Although the upgrade version uses the VARCHAR SQL type for fields, SQL Compare and Upgrade Utility retain the use of the NVARCHAR SQL type after the upgrade. For example, if the SQL type of a field is NVARCHAR(60) in the current version and the SQL type of this field in the upgrade version should be VARCHAR(60), the SQL type of this field will remain NVARCHAR(60) in the upgraded version.

    If the current and updated versions of a field have different length SQL types, SQL Compare and Upgrade Utility use the longer length. For example, if the field SQL Type is NVARCHAR(60) in the current version and if the SQL Type of this field in the upgrade version is VARCHAR(100), the SQL Type of this field will be NVARCHAR(100) in the upgraded version.

    If you want to tailor the SQL type of a field from VARCHAR to NVARCHAR and retain the same length, make sure to perform tailoring from the database instead of from the HP Service Manager database dictionary. Otherwise, the tailoring will be ignored by Service Manager.

In addition, SQL Compare also returns messages for dbdict mappings that contain table unique keys. To view the SQL Compare results of the table unique keys, follow these steps:

  1. Type smupgrade in the Service Manager command line, and then press Enter.
  2. Click View SQL Unique Key Compare Results.
  3. Click Search. Each table unique key difference found by the SQL Compare Utility appears as a separate record in the sqlupgradekey file. This record also lists the new unique keys that you must add to the database dictionary, if you want to check the possible duplicated record manually.
  4. Add the new unique keys to the appropriate database dictionary and SQL database. The sqlupgrade record provides the following information for each new unique key:

    • File Name: The exact file name which delegates the database dictionary.
    • Result Type: The actions happened or will happen to this field.
    • Key Type: The unique key types include primary, unique, and noduplicated.
    • Key Field : Concatenates all the key fields with the | character.
    • Exceptions: The exceptions that occurs when adding or modifying this unique key.

Run the Upgrade Utility on the development environment

Before you proceed, make sure that you have upgraded your server and client to version 9.41. For more information, see Upgrade the server and the client on the production environment .

The Service Manager Upgrade Utility upgrades the display components, database dictionaries, and the application data. The utility uses digital signatures to determine if an application matches the original application. A matching signature indicates that the object in your system has not changed from the original object and the utility can upgrade it safely. If a signature does not match the object in your system, the Upgrade Utility copies the new object to your system but does not overwrite the existing object. You can then examine both versions during the resolution process.

The Upgrade Utility runs three primary phases:

  1. During the first phase, the Upgrade Utility guides you through several questions and collects information needed for the upgrade.
  2. During the second phase, the utility updates dbdicts.
  3. During the third phase, the utility updates application data.

Caution: If you experience problems such as a power failure or a network connection error while upgrading the system, you can fix the issues and rerun the Upgrade Utility. The utility resumes the upgrade from the failure point. However, if the upgrade does not resume from the failure point, restore your database to the last backup point and fix possible issues; then rerun the Upgrade Utility.

To run the Upgrade Utility, follow these steps:

  1. Type smupgrade in the HP Service Manager command line, and then press Enter.
  2. Click Configure and Apply the Upgrade.
  3. The system displays a series of information for your verification, including Applications version upgrading from, Applications version upgrading to, Applications base version, Full path to the Upgrade Utility files and Language(s) to be upgraded. Verify these information and then click Next to continue. If the screen does not display the correct information, do not continue with the upgrade. Contact HP Software Customer Support.
  4. The Upgrade Utility displays the following message:

    Are you going to use this system to create a custom upgrade for another system?

    You are preparing a custom upgrade on a development system. Leave the selection as Yes, and then click Next.

  5. The Upgrade Utility displays the following message:

    Do you want to force the replacement of the objects?

    If you want to replace each Renamed RAD application with its upgrade version, select the Replace RAD option. Each Renamed RAD application is replaced with the upgrade version, and a copy of old RAD application is renamed to PRE<old_version_number><object_name>. Its upgrade result is marked as "Replaced".

    If you do not want to replace Renamed RAD application, do not select the Replace RAD option. Each Renamed RAD application is not replaced but still remains in the Renamed list, and the upgrade version of the RAD application is renamed to NEW941<object_name>. Its upgrade result is kept as Renamed.

  6. Select or clear the Replace RAD check box, and then click Next. This check box is selected by default.
  7. (Optional) The system prompts you to configure the PD migration process by providing the Use Process Designer-based solution matching option and the Synchronize changes back to legacy category tables option. Select your preferred option, and then click Next.

    Note: This screen appears only when you are upgrading from Service Manager 9.3x with PDCP3 installed. Before you proceed, refer to the HP Service Manager Hybrid Migration Guide for more information about the two options.

  8. (Optional) The system prompts you to migrate legacy categories to the corresponding Process Designer-based modules. To move your selection between the legacy categories lists and the Process Designer-based modules lists, select a category and click the arrow button. Click Next.

    Note: This screen appears only when you are upgrading from Service Manager 9.3x with PDCP3 installed. Before you proceed, refer to the HP Service Manager Hybrid Migration Guide for more information.

  9. The upgrade is now ready to start. Click Next to start the upgrade.
  10. Click Yes to confirm that you want to proceed. While the upgrade runs, the Upgrade Utility displays the progress of the upgrade by indicating which process is running, the progress of record processing, and the completion percentage for the upgrade.
  11. When you receive an UPGRADE IS COMPLETE message, the Upgrade Utility has finished the data processing and you can follow the instructions in the message to complete the next steps. After you close the message dialog, you are automatically logged out.

  12. Restart the server and then log back in to the client.
  13. Open the scversion table in Database Manager and verify that the Application Version field is 9.41.00xx. If this field displays a value other than 9.41.00xx, check the log files to identify the issue that occurred.

Review the upgrade log files and resolve any exceptions on the development environment

After running the Upgrade Utility, the next step is to resolve any exceptions or conflicts that prevented the utility from updating certain objects. Until you reconcile these objects, Service Manager features may not behave as expected or may not function at all. First review the upgrade log files to determine if there are any exceptions. Then review the upgrade reports to find any conflicts.

The Upgrade Utility creates a set of log files during the upgrade process. These files reside in the same directory as the upgrade files. You can open the log .txt files in the upgrade folder that you created when you copied the upgrade files to your development environment.

List of upgrade log files
Log file Contents

detail.log

This file contains specific information about the upgrade, including the following:

  • All information in upgrade.log
  • Name of the file being purged, for example, “2014-03-20 13:58:32 dbdict: upgradestatus is purged.”
  • Progress of a file loading, for example, “2014-03-20 13:58:39 Adding record # 100 from table upgradeobjects”.
  • Changes made to fields during file processing, for example, “2014-03-20 14:05:24 Increasing field length for incidentlib.company in kmquery dbdict from VARCHAR(40) to VARCHAR(70)”
  • Signature of a file and the action on it, for example, “2014-03-20 14:19:53 Processing Format Record : cc.get.dependen, signature=(current=3843738292, oob=NONE, upgrade=3843738292), upgraderesult=current”

except.log

This file contains information about any exceptions reported by the upgrade, including the following:

  • Messages about data type mismatches that failed to be resolved, or database dictionaries failed to be upgraded, for example, "2014-03-20 14:04:29 dbdict:FolderRights, field:delete, field type is logical -- expected to be:character"

    See Data type mismatches.

  • Messages about the unique key changes that failed to be resolved, for example, "2014-03-20 14:06:31 dbdict:Todo, Unique Key is {"record.id", "itemType"} -- expected to be:{"record.id"}"

If there are exceptions logged in this file, you will have to resolve them in the "Resolving exceptions and conflicts" phase.

upgrade.log

This file contains information about where the upgrade is at any point. This file contains only the main steps of the upgrade, including the following:

  • Starting and ending of each sub-phase, for example, “2014-03-20 13:58:07 **** Start Phase [Pre Upgrade Action Update] ****”

  • Main activities during each sub phase, for example, “2014-03-20 13:58:32 Purging upgrade files...”

  • Number of files to be processed, for example, “2014-03-20 14:04:25 There are 608 dbdicts to be processed.”

  • Names of the files being processed, for example, "2014-03-20 14:04:25 Processing dbdict, AdvFilter”

Data type mismatches

If the data type of a field in your dbdict does not match the data type of the like-named field defined in the dbdict provided by the upgrade package, the Upgrade Utility cannot merge these dbdicts. For example, if an existing dbdict has a scalar field and the Upgrade Utility attempts to add a structure field with the same name, this discrepancy prevents the dbdict from being updated.

To fix this issue, you can change the data type and the SQL type of the field, and use Complex Update to migrate existing data on that field to the target data type. Follow these steps to modify field data type by using the Dbdict Utility:

  1. Navigate to System Navigator > Tailoring > Database Dictionary.
  2. Type the dbdict name in the File Name field, and then click Search.
  3. Double-click the field you want to change the data type, and then make updates as expected.
  4. Save your changes.

The following is an example that shows the process of fixing a typical data type mismatch.

Note: The error messages in the except.log file identify each data type by an index number:

Index number Data type
1 number
2 character
3 date/time
4 logical
8 array
9 structure
11 expression

The following table displays a list of data type mismatches that may appear in the except.log file for an Oracle database. Only some examples are listed for each category of data type mismatch. If you are using an MSSQL or a DB2 database, the actual error message may vary slightly. For example, the following bullet points highlight the different errors in the different databases:

  • Oracle Error : dbdict:ApprovalDef, field:appr.condition, SQL type is CHAR(1) -- expected to be:RAW(255)
  • MSSQL Error: dbdict:ApprovalDef, field:appr.condition, SQL type is CHAR(1) -- expected to be:VARBINARY(255)
  • DB2 Error: dbdict:ApprovalDef, field:appr.condition, SQL type is CHAR(1) -- expected to be:VARCHAR(255) FOR BIT DATA

Data type mismatches for HP Service Manager 7.1x:

Error message in Oracle: Solution:

dbdict:cm3r, field:svc.options, SQL type is VARCHAR2(150) -- expected to be:BLOB

dbdict:incidents, field:svc.options, SQL type is VARCHAR2(90) -- expected to be:BLOB

To fix these issues, change the SQL type to RAW(255) or BLOB by using the Dbdict utility.

Additionally, you will need to set the “SQL RC” to true to allow the field to store RAD expressions. Note that the stored value of the field in the database is encoded by Service Manager.

dbdict:cm3eventack, field:number, field type is number -- expected to be:character

To fix this issue, change the field type to character by using the Dbdict utility.

dbdict:eventin, field:evnumber, field type is number -- expected to be:character

dbdict:eventout, field:evnumber, field type is number -- expected to be:character

These fields reside in the descriptor structure field of BLOB SQL type. To fix this issue, change the field type to character by using the Dbdict utility.

dbdict:licenseinfo, field:id, field type is character -- expected to be:number

The licenseinfo table is used to track license information by Service Manager server. This issue should be ignored.

dbdict:svcCatalog, field:id.attach, field type is character -- expected to be:number

This id.attach field is an alias of id field in svcCatalog table. To fix the issue, change the field type to by using the Dbdict utility.

dbdict:FolderRights, field:close, field type is logical -- expected to be:character

The close field is an alias of delete field in FolderRights table. To fix the issue, change the field type to character by using the Dbdict utility.

dbdict:FolderRights, field:delete, field type is logical -- expected to be:character

This issue can be fixed by following the steps in the Fixing the FolderRights delete field section.

dbdict:Objectrevision, field:file.name.vj.1, SQL type is VARCHAR2(60) -- expected to be:EMPTY This issue can be fixed by removing the “SQL Name”, “SQL Type”, and “SQL Table” from the file.name.vj.1 field.
dbdict:kmcategory, field:permission, SQL type is BLOB -- expected to be:EMPTY This issue will be resolved automatically during Upgrade Process. Please ignore it.

dbdict:cm3r, field:assets, SQL type is CLOB -- expected to be: VARCHAR2(200)

dbdict:ocmgroups, field:approvers, SQL type is CLOB -- expected to be: VARCHAR2(80)

dbdict:operator, field:cap.exec, SQL type is CLOB -- expected to be: VARCHAR2(50)

dbdict:operator, field:profile.change, SQL type is CLOB -- expected to be: VARCHAR2(60)

dbdict:operator, field:profile.request, SQL type is CLOB -- expected to be: VARCHAR2(60)

dbdict:svcCatalog, field:access.list, SQL type is CLOB -- expected to be: VARCHAR2(50)

This kind of error message is generated because the Upgrade Utility does not re-map the field of array type from the main table to the alias table and the subsequent full-table copy may slow down the upgrade.

Follow these steps to fix the issue:

  1. Double-click the field of array type which contains this field in the related table, and then update the value in “SQL Table” to a<number> which is not used in the alias table. For example, a3.
  2. Double-click the field of character type in the related table. Update the value in “SQL TYPE” to the expected value, and then update the value in “SQL Table” to the same a<number> which is not used in the alias table. For example, a3.

  3. Click OK to save your changes.

Caution: If the related table contains more than 100,000 records, fixing the data type mismatches in the field may take more than one hour.

dbdict:inbox, Primary Key is inbox.id -- the primay key can not be added. Since SM doesn't support operation on table with primary key when application version is older than 9.32, then add inbox.id as unique key. To fix this issue, change the unique key to primary key by using the Dbdict utility.

Data type mismatches for HP Service Manager 9.2x:

Error message in Oracle: Solution:

dbdict:incidents, field:svc.options, SQL type is VARCHAR2(90) -- expected to be:BLOB

dbdict:SMISTaskQueue, field:failedReason, SQL type is VARCHAR2(60) -- expected to be:BLOB

To fix this issue, change the SQL type to RAW(255) or BLOB by using the Dbdict utility.

Additionally, you will need to set the “SQL RC” to true to allow the field to store RAD expressions. Note that the stored value of the field in the database is encoded by Service Manager.

dbdict:cm3eventack, field:number, field type is number -- expected to be:character

To fix this issue, change the field type to character by using the Dbdict utility.

dbdict:eventin, field:evnumber, field type is number -- expected to be:character

dbdict:eventout, field:evnumber, field type is number -- expected to be:character

These fields reside in the descriptor structure field of BLOB SQL type. To fix this issue, change the field type to character by using the Dbdict utility.

dbdict:licenseinfo, field:id, field type is character -- expected to be:number

The licenseinfo table is used to track license information by Service Manager server. This issue should be ignored.

dbdict:svcCatLanguage, field:catalogid, field type is character -- expected to be:number

This field resides in the catalog structure field of BLOB SQL type. To fix this issue, change the field type to number by using the Dbdict utility.

dbdict:svcCatalog, field:id.attach, field type is character -- expected to be:number

This id.attach field is an alias of id field in svcCatalog table. To fix the issue, change the field type to by using the Dbdict utility.

dbdict:FolderRights, field:delete, field type is logical -- expected to be:character

This issue can be fixed by following the steps in the Fixing the FolderRights delete field section.

dbdict:cm3r, field:assets, SQL type is CLOB -- expected to be: VARCHAR2(200)

dbdict:ocmgroups, field:approvers, SQL type is CLOB -- expected to be: VARCHAR2(80)

dbdict:operator, field:cap.exec, SQL type is CLOB -- expected to be: VARCHAR2(50)

dbdict:operator, field:profile.change, SQL type is CLOB -- expected to be: VARCHAR2(60)

dbdict:operator, field:profile.request, SQL type is CLOB -- expected to be: VARCHAR2(60)

dbdict:svcCatalog, field:access.list, SQL type is CLOB -- expected to be: VARCHAR2(50)

This kind of error message is generated because the Upgrade Utility does not re-map the field of array type from the main table to the alias table and the subsequent full-table copy may slow down the upgrade.

Follow these steps to fix the issue:

  1. Double-click the field of array type which contains this field in the related table, and then update the value in “SQL Table” to a<number> which is not used in the alias table. For example, a3.
  2. Double-click the field of character type in the related table. Update the value in “SQL TYPE” to the expected value, and then update the value in “SQL Table” to the same a<number> which is not used in the alias table. For example, a3.

  3. Click OK to save your changes.

Caution: If the related table contains more than 100,000 records, fixing the data type mismatches in the field may take more than one hour.

dbdict:inbox, Primary Key is inbox.id -- the primay key can not be added. Since SM doesn't support operation on table with primary key when application version is older than 9.32, then add inbox.id as unique key. To fix this issue, change the unique key to primary key by using the Dbdict utility.

Data type mismatches for HP Service Manager 9.3x without Process Designer Content Pack installed:

Error message in Oracle: Solution:

dbdict:incidents, field:svc.options, SQL type is VARCHAR2(90) -- expected to be:BLOB

dbdict:SMISTaskQueue, field:failedReason, SQL type is VARCHAR2(60) -- expected to be:BLOB

dbdict:Workflow, field:description, SQL type is VARCHAR2(255) -- expected to be:BLOB

To fix this issue, change the SQL type to RAW(255) or BLOB by using the Dbdict utility.

Additionally, you will need to set the “SQL RC” to true to allow the field to store RAD expressions. Note that the stored value of the field in the database is encoded by Service Manager.

dbdict:cm3eventack, field:number, field type is number -- expected to be:character To fix this issue, change the field type to character by using the Dbdict utility.
dbdict:Rule, field:tablename, SQL type is VARCHAR2(60) -- expected to be:CLOB Ignore the error message. No further action is necessary.
dbdict:svcItemCount, field:access.filter, SQL type is RAW(255) -- expected to be:CLOB To fix these issues, change the SQL type to CLOB by using the Dbdict utility. Additionally, you need to switch the value of “SQL RC” to update the type.

dbdict:eventin, field:evnumber, field type is number - - expected to be:character

dbdict:eventout, field:evnumber, field type is number -- expected to be:character

These fields reside in the descriptor structure field of BLOB SQL type. To fix this issue, change the field type to character by using the Dbdict utility.

dbdict:svcCatLanguage, field:catalogid, field type is character -- expected to be:number

This field resides in the catalog structure field of BLOB SQL type. To fix this issue, change the field type to number by using the Dbdict utility.

dbdict:svcCatalog, field:id.attach, field type is character -- expected to be:number

This id.attach field is an alias of id field in svcCatalog table. To fix the issue, change the field type to by using the Dbdict utility.

dbdict:FolderRights, field:delete, field type is logical -- expected to be:character

This issue can be fixed by following the steps in the Fixing the FolderRights delete field section.

dbdict:cm3r, field:assets, SQL type is CLOB -- expected to be: VARCHAR2(200)

This kind of error message is generated because the Upgrade Utility does not re-map the field of array type from the main table to the alias table and the subsequent full-table copy may slow down the upgrade.

Follow these steps to fix the issue:

  1. Double-click the field of array type which contains this field in the related table, and then update the value in “SQL Table” to a<number> which is not used in the alias table. For example, a3.
  2. Double-click the field of character type in the related table. Update the value in “SQL TYPE” to the expected value, and then update the value in “SQL Table” to the same a<number> which is not used in the alias table. For example, a3.

  3. Click OK to save your changes.

Caution: If the related table contains more than 100,000 records, fixing the data type mismatches in the field may take more than one hour.

dbdict:inbox, Primary Key is inbox.id -- the primay key can not be added. Since SM doesn't support operation on table with primary key when application version is older than 9.32, then add inbox.id as unique key. To fix this issue, change the unique key to primary key by using the Dbdict utility.

Data type mismatches for HP Service Manager 9.3x with Process Designer Content Pack 9.30.3 installed:

Error message in Oracle: Solution:

dbdict:incidents, field:svc.options, SQL type is VARCHAR2(90) -- expected to be:BLOB

dbdict:SMISTaskQueue, field:failedReason, SQL type is VARCHAR2(60) -- expected to be:BLOB

dbdict:Workflow, field:description, SQL type is VARCHAR2(255) -- expected to be:BLOB

To fix this issue, change the SQL type to RAW(255) or BLOB by using the Dbdict utility.

Additionally, you will need to set the “SQL RC” to true to allow the field to store RAD expressions. Note that the stored value of the field in the database is encoded by Service Manager.

dbdict:cm3eventack, field:number, field type is number -- expected to be:character To fix this issue, change the field type to character by using the Dbdict utility.
dbdict:Rule, field:tablename, SQL type is VARCHAR2(60) -- expected to be:CLOB Ignore the error message. No further action is necessary.
dbdict:svcItemCount, field:access.filter, SQL type is RAW(255) -- expected to be:CLOB To fix these issues, change the SQL type to CLOB by using the Dbdict utility. Additionally, you need to switch the value of “SQL RC” to update the type.

dbdict:eventin, field:evnumber, field type is number - - expected to be:character

dbdict:eventout, field:evnumber, field type is number -- expected to be:character

These fields reside in the descriptor structure field of BLOB SQL type. To fix this issue, change the field type to character by using the Dbdict utility.

dbdict:svcCatalog, field:id.attach, field type is character -- expected to be:number

This id.attach field is an alias of id field in svcCatalog table. To fix the issue, change the field type to by using the Dbdict utility.

dbdict:FolderRights, field:delete, field type is logical -- expected to be:character

This issue can be fixed by following the steps in the Fixing the FolderRights delete field section.

dbdict:cm3r, field:assets, SQL type is CLOB -- expected to be: VARCHAR2(200)

This kind of error message is generated because the Upgrade Utility does not re-map the field of array type from the main table to the alias table and the subsequent full-table copy may slow down the upgrade.

Follow these steps to fix the issue:

  1. Double-click the field of array type which contains this field in the related table, and then update the value in “SQL Table” to a<number> which is not used in the alias table. For example, a3.
  2. Double-click the field of character type in the related table. Update the value in “SQL TYPE” to the expected value, and then update the value in “SQL Table” to the same a<number> which is not used in the alias table. For example, a3.

  3. Click OK to save your changes.

Caution: If the related table contains more than 100,000 records, fixing the data type mismatches in the field may take more than one hour.

dbdict:inbox, Primary Key is inbox.id -- the primay key can not be added. Since SM doesn't support operation on table with primary key when application version is older than 9.32, then add inbox.id as unique key. To fix this issue, change the unique key to primary key by using the Dbdict utility.

Note: Ignore the message if an array field has been moved to the alias table. For example:

dbdict:operator, field:names, SQL type is VARCHAR2(60) -- expected to be:CLOB 
dbdict:operator, field:values, SQL type is VARCHAR2(60) -- expected to be:CLOB 
dbdict:operator, field:groups, SQL type is VARCHAR2(60) -- expected to be:CLOB 
dbdict:operator, field:month.ext, SQL type is VARCHAR2(60) -- expected to be:CLOB 
dbdict:operator, field:month.abv, SQL type is VARCHAR2(60) -- expected to be:CLOB 
dbdict:operator, field:security.group, SQL type is VARCHAR2(60) -- expected to be:CLOB 
dbdict:operator, field:assignment.groups, SQL type is VARCHAR2(60) -- expected to be:CLOB
dbdict:operator, field:named.modules, SQL type is VARCHAR2(30) -- expected to be:CLOB
dbdict:operator, field:ess.initial.app.names, SQL type is VARCHAR2(30) -- expected to be:CLOB 
dbdict:operator, field:ess.initial.app.values, SQL type is VARCHAR2(30) -- expected to be:CLOB 
dbdict:operator, field:misc.array, SQL type is VARCHAR2(30) -- expected to be:CLOB 
dbdict:operator, field:kmgroup, SQL type is VARCHAR2(30) -- expected to be:CLOB
						

Note: Ignore the message if the child fields of an array of structure field have been mapped to the database columns. For example:

dbdict:computer, field:video, SQL type is EMPTY -- expected to be:BLOB 
dbdict:computer, field:vid.card.id, SQL type is VARCHAR2(30) -- expected to be:EMPTY 
dbdict:computer, field:vid.card.bios, SQL type is VARCHAR2(30) -- expected to be:EMPTY 
dbdict:computer, field:vid.manufacturer, SQL type is VARCHAR2(30) -- expected to be:EMPTY 
dbdict:computer, field:vid.model, SQL type is VARCHAR2(30) -- expected to be:EMPTY 
dbdict:computer, field:vid.chip.type, SQL type is VARCHAR2(30) -- expected to be:EMPTY 
dbdict:computer, field:vid.memory, SQL type is NUMBER -- expected to be:EMPTY 
dbdict:computer, field:vid.resolution, SQL type is VARCHAR2(30) -- expected to be:EMPTY 
dbdict:computer, field:vid.resolution.x, SQL type is VARCHAR2(30) -- expected to be:EMPTY 
dbdict:computer, field:vid.resolution.y, SQL type is VARCHAR2(30) -- expected to be:EMPTY
						

Fixing the FolderRights delete field

Example: The dbdict for the FolderRights table has a delete field with the "logical" data type. The Upgrade Utility tries to update the delete field with the "character" data type, which has possible values of "always," "never," "workgroup," and "assigned."

  1. In the dbdict for the FolderRights table, add a field named delete.tmp with a data type of character, and update the dbdict.
  2. Log out of the system and log back in.
  3. Make sure that the Complex Update feature is enabled for the FolderRights table.
  4. In Database Manager, search for all records in the FolderRights table.
  5. From the More Actions menu, click Mass Update.
  6. When you are asked whether you want to update all records, click Yes.
  7. Click Complex Update on the toolbar.
  8. In the statements area under Instructions for action on EACH RECORD, add statements using standard RAD expressions to migrate data from the delete field to the delete.tmp field.

    Example:

    if delete in $file=true then delete.tmp in $file="always" else delete.tmp in $file="never"

  9. In the dbdict for the FolderRights table, edit the delete field and add the Type (character) and SQL Type (same as the SQL Type automatically assigned for delete.tmp).
  10. Log out of the system and log back in.
  11. In the Database Manager, search for all records in the FolderRights table.
  12. From the More Actions menu, click Mass Update.
  13. Click Complex Update on the toolbar.
  14. In the statements area under Instructions for action on EACH RECORD, add statements using standard RAD expressions to migrate data from the delete.tmp field to the delete field and empty the delete.tmp field.

    Example:

    delete in $file=delete.tmp in $file; delete.tmp in $file=NULL

  15. In the dbdict for the FolderRights table, follow these steps to delete the delete.tmp field:

    1. In the Database Manager, search for all records in the dbdict table.
    2. Select the dbdict format.
    3. Type FolderRights in the Name field, and then click Search.
    4. Locate the row for the delete.tmp field. Remove the values in the Name, Type, Index, and Level fields respectively.
    5. Click Save and OK.
  16. Log out of the system and log back in.
  17. Test the change by updating records in the FolderRights table and populating the delete field with "always," "never," "workgroup," or "assigned."

Add new object record failures

All the upgraded objects are saved in the upgradeobjects table, and you need to add some objects from this table to the current upgradeobjects table. If the target table contains more than one unique type key, some errors may occur when adding new objects during the upgrade process. Refer to the following error message as an example.

2014-03-20 14:04:29 file:inbox, updated the field inbox.id value from 10000313 to 14042954310000313

The value of the inbox.id field is 10000313 in this example, which is used in the current upgradeobjects table. If the Upgrade Utility adds an inbox record that contains the same value for this field, the current value of the inbox.id field is automatically prefixed with a timestamp to avoid duplication errors. The timestamp is composed of hour (two bits), minute (two bits), second (two bits) and millisecond (three bits). In this example, the timestamp is 140429543.

After upgrading, you can update the temporary value of the inbox.id field as necessary.

Key change failures

If the except.log file lists key change failures such as the ones listed below, follow the appropriate steps to correct the keys:

  • Error: Failed to add <key_type> key: <field_name> to table <table_name>. Follow these steps to add the key manually:

    1. Type dbdict in the HP Service Manager command line, and then press Enter.
    2. In the File Name field, type the table name indicated by the error message, and then click Search.
    3. Click the Keys tab.
    4. Position the mouse pointer in the key name part of an empty key structure and click New Field/Key.
    5. Select the appropriate key type from the combo list, and add the appropriate field to the key, as indicated by the error message.
    6. Click Add, and then click Yes to confirm.
    7. Click the Keys tab, and then click OK to save the change.
    8. Continue to follow step a through step g for each key that the utility failed to add.
  • Error: Failed to update <key_type> key: <old_field_name> to <new_field_name> in table <table_name>. Follow these steps to update the key manually:

    1. Type dbdict in the HP Service Manager command line, and then press Enter.
    2. In the File Name field, type the table name indicated by the error message, and then click Search.
    3. Click the Keys tab.
    4. From the key list, select the key name that the error message indicates, and then click Edit Field/Key.
    5. Update the fields in the key according to the field names indicated by the error message.
    6. Click OK, and then click Yes to confirm.
    7. Click the Keys tab, and then click OK to save the change.
    8. Continue to follow step a through step g for each key that the utility failed to update.
  • Error: Failed to remove <key_type> key: <field_name> from table <table_name>. Follow these steps to remove the key manually:

    1. Type dbdict in the HP Service Manager command line, and then press Enter.
    2. In the File Name field, type the table name indicated by the error message, and then click Search.
    3. Click the Keys tab.
    4. From the key list, select the key name that the error message indicates, and then click Edit Field/Key.
    5. Click Delete, and then click Yes to confirm.
    6. Click the Keys tab, and then click OK to save the change.
    7. Continue to follow steps a through step f for each key that the utility failed to update.

In addition, you may encounter the following Unique Key errors:

Error: dbdict:Approval, Unique Key is {"unique.key", "file.name", "name"} -- expected to be:{"unique.key", "file.name", "name", "component"}

Error: dbdict:ApprovalLog, Unique Key is {"counter", "file.name", "unique.key"} -- expected to be:{"counter", "file.name", "unique.key", "component"}

Error: dbdict:displayeventrev, Unique Key is {"screen.id", "language", "event", "event.sig", "sc.revision"} -- expected to be:{"id", "sc.revision"}

Error: dbdict:displayoptionrev, Unique Key is {"screen.id", "language", "txt.bank", "txt.option", "text.sig", "sc.revision"} -- expected to be:{"id", "sc.revision"}

Unexpected errors

If the except.log file or the Upgrade Results report lists any errors other than key change failures and data type mismatches, contact HP Software Customer Support for assistance.

Review the Upgrade Results report and resolve conflicts on the development environment

Follow the instructions in the task below to find conflicts that need to be resolved and to mark objects as reconciled after you resolve the conflicts.

For more specific guidelines and examples for conflict resolution, see the Conflict Resolution for Upgrade to Service Manager (SM) 9.3x white paper.

  1. Follow these steps to view the Upgrade Results report:

    1. Type smupgrade in the Service Manager client command line and press Enter.
    2. Click View Upgrade Results and Merge Conflicts.
    3. In the Result drop-down list, select the type of results you want to search for. For example, select Renamed.

      Note: When you select a result type from the drop-down list, the description of that result type appears under the drop-down list. If you want to view the full Upgrade Results report that includes all objects and statuses, clear the Result field and press Enter.

  2. For each renamed or forced object, choose one of the following options:

    • Option 1: Use your customized object instead of the new object. In this case, delete the new object that is prefixed with NEW941 and the copied object that is prefixed with PRE<version_number>.
    • Option 2: Use the new object instead of your customized object. In this case, delete your customized object and the copied object that is prefixed with PRE<version_number> and rename the new object by removing the NEW941 prefix, or you can select Choose Upgrade to replace the object with the new object that is prefixed with NEW941.

      Note: The Mass Choose Upgrade feature can help you replace multiple customized objects with new objects that are prefixed with NEW941. For more information, see the "Using the Mass Choose Upgrade feature" section.

    • Option 3: Merge the changes shipped with the new object into your customized object. In this case, find out what changes the new object includes, manually apply those changes to your customized object, and then delete the new object that is prefixed with NEW941 and the copied object that is prefixed with PRE<version_number>.

      Note: The Merge tool, Auto-Merge and Revert options, and third-party three-way compare and merge tools can assist you in comparing the objects and merging the code during the out-of-box upgrade. See Using the Merge tool and Using the Auto Merge and Revert options for more information.

  3. After you change an object, mark the object as reconciled so that the Upgrade Utility will not identify this object as conflicting when it applies an upgrade to a later version. When you upgrade to a later version in the future, the Upgrade Utility will mark the object as Previously Reconciled instead of Renamed.

    Note: The Mark as Reconciled feature can assist you to mark the object as Reconciled." See "Using the Mark as Reconciled feature" for more information.

    You can export the upgrade results data to a Microsoft Excel spreadsheet. To do so, from the Upgrade Results report, click the drop-down options menu and select Export to Excel. You can also select File > Print from the Upgrade Results report to print the list of records. For more information, see the Service Manager online help.

    The search criteria, search results, and a description of the applicable action for each result are described in the table below.

    Field Definition
    Object Type Enter the type of object you want to search for, or leave this field blank to return all object types. Fro example, the object types you could search for include Application Cluster, Object, Process, ScriptLibrary, displayoption, format, formatctrl, help, joindefs, link, scmessage, screlconfig, triggers, validity, and wizard.
    Object Name

    Enter the name of the object you want to search for, or leave this field blank to return objects with any name. The object name is typically the unique identifier in the database table specified for the object type.

    The unique identifier for some object types (for example, format) may contain concatenate values of multiple fields according to the key setting in the signaturemake signature definition table.

    Result: Added

    Select this option to search for new objects that the Upgrade Utility added to the system. These objects did not exist in your system before this upgrade.

    No further action is necessary for these objects.

    Result: Already Current

    Select this option to search for objects that were already the latest version.

    No further action is necessary for these objects.

    Result: Auto Merged

    Select this option to search for objects that the Upgrade Utility automatically merged by using your local version, the out-of-box version and the upgrade version of the objects.

    Note: The result occurs only after applying the first out-of-box upgrade; it no longer occurs after applying the custom upgrade.

    Required Action: If the object was not merged the way you expect, use the Revert or Mass Revert option from the options menu to revoke the auto-merge and merge the objects manually.

    Result: Error

    Select this option to search for objects that encountered an error while being updated by the Upgrade Utility. For more information about the error, review the sm.log and except.log files.

    Required Action: Fix the cause of the error, or apply the upgrade again in a copy of your production system if it is needed.

    Result: Forced

    Select this option to search for objects that were not only tailored on your Service Manager system but also changed in the upgrade version. After the upgrade, your objects were automatically replaced with the objects in your custom upgrade package. The Upgrade Utility copied your object of the original version to its revision.

    Note: This result occurs only after applying the custom upgrade.

    No further action is necessary for these objects.

    Result: Kept Customer

    Select this option to search for objects that were tailored on your Service Manager system but not changed on the upgrade version. These objects were not changed.

    Note: The result occurs only after applying the first out-of-box upgrade; it no longer occurs after applying the custom upgrade.

    No further action is necessary for these objects.

    Tip: If the object is Application Cluster and you want to use the upgrade version, you can select Choose Upgrade. The object <object_name> is then renamed to PRE<old_version_number><object_name> and the objectNEW941<object_name> is renamed to <object_name>.

    Result: Kept Customer Non-OOB

    Select this option to search for objects that did not exist in the original version but were added on your Service Manager system, and also added on the upgrade version.

    Note: The result occurs only after applying the first out-of-box upgrade; it does not occur after applying the custom upgrade.

    Note: If the object is Application Cluster and you want to use the upgrade version, you can select Choose Upgrade. The object <object name> is then renamed to PRE<old version number><object name> and the object NEW941<object name> is renamed to <object name>.

    Required Action: Choose one of the following solutions for each object with this result.

    • Keep the old version — No further action is necessary.
    • Keep the new version — Select the object in the merge view and click Copy all from left to right on the toolbar.
    • Merge new and current versions — Determine which of the new features need be incorporated into your tailored object, and then modify the tailored object. When finished, delete the new object NEW941<object name> and the copied object PRE<old version number><object name>.

    Result: Merged

    Select this option to search for dbdict objects that were tailored on your Service Manager system, which Upgrade Utility has merged with the version in this upgrade.

    Required Action: Test these objects, and when satisfied change their result to Reconciled.

    Result: Previously Reconciled

    Select this option to search for objects that were tailored on your Service Manager system, that were marked as Reconciled during a previous upgrade or patch release, or where your object was not changed and the Upgrade Utility added a new object NEW93x<object name>.

    Note: The result occurs only after applying the out-of-box upgrade; it no longer occurs after applying the custom upgrade.

    Required Action: Choose one of the following for each object with this result.

    • Keep the old version — No further action is necessary.
    • Keep the new version — Select the object in the merge view and click Copy all from left to right on the tool bar.
    • Merge new and old versions — Determine which of the new features should be incorporated into your tailored object, and then make the changes in your tailored object. When finished, delete the new object NEW93x<object name> and the copied object PRE<old version number><object name>.
    Result: Reconciled

    Select this option to search for objects that you have already marked as Reconciled.

    Note: The result occurs only after applying the out-of-box upgrade; it no longer occurs after applying the custom upgrade.

    No further action is necessary for these objects.

    Result: Renamed

    Select this option to search for objects that were not only tailored on your Service Manager system but also changed on the upgrade version. After upgrade, your tailored object was not changed, the Upgrade Utility added a new object NEW93x<object name> and copied your tailored object as a backed up object PRE<old version number><object name>.

    Note: The result occurs only after applying the out-of-box upgrade; it no longer occurs after applying the custom upgrade.

    Required Action: Choose one of the following for each object with this result.

    • Keep the old version — No further action is necessary.
    • Keep the new version — Select the object in the merge view and click Copy all from left to right on the tool bar.
    • Merge new and old versions — Determine which of the new features should be incorporated into your tailored object, and then make the changes in your tailored object. When finished, delete the new object NEW93x<object name> and the copied object PRE<old version number><object name>.
    Result: Upgraded

    Select this option to search for objects that were automatically replaced with the upgrade version objects. These are objects that were not tailored on your Service Manager system, but changed on the upgrade version.

    Note: The result occurs only after applying the out-of-box upgrade; it no longer occurs after applying the custom upgrade.

    No further action is necessary for these objects.

    Result: Replaced

    Select this option to search for RAD Application objects that were not only tailored on your Service Managersystem but also changed on the upgrade version when you select Replace RAD. After upgrade, your tailored object was renamed to PRE<old version number><object name> and the Upgrade Utility added a new object <object name>.

    Note: The result occurs only after applying the out-of-box upgrade; it does not occur after applying the custom upgrade.

    No further action is necessary for these objects.

    Tip: If you do not want to replace the RAD Application, you may select Revert. The object <object name> is then renamed to NEW941<object name> and the object PRE<old version number><object name> is renamed to <object name>. The result is then set back to Renamed, Kept Customer or Kept Customer Non-OOB.

    See the following table for some examples about how the upgrade result types are marked for an existing record.

    OOB record (9.30) OOB record (9.33) Customer record (9.33) OOB record (9.4x) Upgrade
    Utility
    check sequence
    Upgrade Utility
    check condition
    Conflict flag Upgrade result type Upgrade result value
    111 112 112 112 1 Customer record (9.33) = OOB record (9.4x) No Already Current 112
    111 112 112 113 2 Customer record (9.33) != OOB record(9.4x) and Customer record (9.33) = OOB record (9.33) No Upgraded 113
    111 112 113 112 3 Customer record (9.33) != OOB record (9.4x)
    and Customer record (9.33) != OOB record (9.33)
    and OOB record (9.33) = OOB record (9.4x)
    No Kept Customer 113
    111 112 113 114 4 Customer record (9.33) != OOB record (9.4x)
    and Customer record (9.33) != OOB record (9.4x) and OOB record (9.33) != OOB record (9.4x)
    Yes Renamed 113

Using the Merge tool

For each object marked as "Renamed" in the Upgrade Results list, the Upgrade Utility generates XML objects for the three versions of the object: base, customer, and upgrade.

Version Location Description
base Upgrade\3waymerge\work\base An XML representation of every object that has been signatured in the pre-upgrade out-of-box version.
customer Upgrade\3waymerge\work\customer An XML representation of all objects that were tailored in the customer version and resulted in a conflict during the upgrade.
upgrade Upgrade\3waymerge\work\upgrade An XML representation of the object provided by the upgrade package of all objects that resulted in a conflict.

Each of the three folders described above contains a sub-folder for each signatured table. You can find the XML representations of the objects in the table within these sub-folders.

The built-in, two-way/three-way Merge tool allows you to examine the upgrade and customer versions of a record in a side-by-side view as well as the base, upgrade, and customer versions of a record in a three-way view. This will help you to determine which changes to include in the final record.

Note: The tool does not work with RAD applications.

This tool assists the conflict resolution process in these two ways:

  • It allows you to identify where changes are located before you can visually compare the objects and to make changes manually, such as in format records.
  • It allows you to identify and merge changes directly between objects, such as ScriptLibrary records.

To use the Merge tool, follow these steps:

  1. Click View Upgrade Results and Merge Conflicts.
  2. In the Result drop-down list, select Renamed.

    Note: The Two-way/Three-way Merge tool is available only for “Renamed” records.

  3. Click Search.
  4. A list is returned that displays all the result records of the “Renamed” type. Select a record that you want to examine, and then click Merge on the toolbar.
  5. The current default merge mode is Three-Way Merge mode. The merge option is not available for format records. Instead, you can click Compare option from the More Actions menu to start the merge tool in read-only mode. You can use this mode to identify the differences in the side-by-side view or three-way view and then merge records manually in Forms Designer.

    1. In Three-Way Merge mode, click the Show Ancestor Pane button to show the base record reference. Click the button again to hide the base record reference.

    2. In Three-Way Merge mode, if the records of base, upgrade, and customer versions are all different, the background color is red. If you put the cursor into the records with the red background and then click the Copy Current Change from Left to Right button, the selected records from the left pane will be appended to selected records in the right pane.

    3. In Three-Way Merge mode, if the records of the customer version are identical to the base version, but different from the upgrade version, the background color is blue. If you put the cursor into the records with the blue background, and then click the Copy Current Change from Left to Right button the selected records from the right pane will be replaced by the selected records from the left pane.
    4. In Three-Way Merge mode, if the records on the left contain red background records, and you then click the Copy All from Left to Right button, the records in the right pane with blue background will be replaced with selected records from the left pane.

      Note: The right records with red background will not be changed. To do this, you will need to switch to Two-Way Merge mode to use Copy All from Left to Right feature.


  6. To enter Two-Way Merge mode, click the Two-Way Compare (Ignore Ancestor) button. In this mode, the Show Ancestor Pane button is disabled.

    Note: When you do this, the button label changes to Three-Way Compare.  Click this again to revert to Three-Way Compare mode.

    1. In Two-Way-Merge mode, if one record differs upgrade and customer versions, you can click Copy Current Change from Left to Right button to replace a selected record from the left pane to the right pane.
    2. In Two-Way-Merge mode, click Copy All from Left to Right button to replace all records in the right pane with the records from the left pane.

Using a third party tool to visually compare objects

You may also visually compare the three versions of each object using a three-way compare and merge tool outside Service Manager, and then merge them manually in Service Manager. For example, you can use a tool, such as KDiff3 for Windows, to compare and merge objects.

To download and learn about KDiff3, visit the KDiff3 Web site.

A brief example of using KDiff3 to compare the three versions of an object is provided in the following steps:

  1. Install KDiff3 on the Service Manager server host.
  2. Open KDiff3. For more information, refer to the KDiff3 documentation.
  3. For the A(Base) parameter, specify the path to the Upgrade\3waymerge\work\base folder.
  4. For the B parameter, specify the path to the Upgrade\3waymerge\work\customer folder.
  5. For the C parameter, specify the path to the Upgrade\3waymerge\work\upgrade folder.
  6. Click OK.
  7. Navigate the folder structure and double-click the file that is named after the object you want to merge.
  8. Compare the three versions of the object in the 3-way compare view.

  9. Manually apply the changes you have identified to the object in Service Manager.

Using the Auto Merge and Revert options

If, during the upgrade, the Upgrade Utility automatically merges some of your objects with the upgraded versions of the objects, the Upgrade Results reports lists these merged objects as Auto Merged. You can use the Revert feature to restore "Auto Merged" or "Renamed" objects or "Replaced" Application Cluster objects to their original states. Click Revert on the toolbar to restore one object or select Mass Revert from the drop-down options menu to restore multiple objects. After you restore an object, you can also reapply the Auto Merge to that object by clicking the Auto Merge button on the toolbar or selecting the Mass Auto Merge option from the drop-down options menu.

Note: If you do not choose to use the auto-merge option, you must manually unzip the OOB data to the same folder in which you extracted the Merge Tool. If you do choose the auto-merge option, the OOB data is extracted automatically by the Merge Tool.

Using the Mass Choose Upgrade feature

During the Upgrade process, you can use the Mass Choose Upgrade feature to overwrite your systems old objects with the newer versions from the upgrade utility. You can use this feature to quickly update the objects of the following statuses, which are generated during the upgrade:

  • Auto Merged
  • Renamed
  • Previously Reconciled
  • Reconciled

You can use this feature to quickly update Application Cluster objects of the following statuses:

  • Kept Customer
  • Kept Customer Non-OOB
  • Renamed

To use the Mass Choose Upgrade feature, follow these steps:

  1. Click View Upgrade Results and Merge Conflicts.
  2. In the Result drop-down list, filter the set of objects (Auto Merged; Renamed; Previously Reconciled; Reconciled) on which you wish to use the Mass Choose Upgrade feature and then click Search.
  3. If more than two objects exist in the resulting search, click the Mass Choose Upgrade button from More Actions menu in the returned list and then click Yes.

After you click Yes, the objects that you selected will be updated with the contents of the newer versions from the upgrade utility.

Using the Mark as Reconciled feature

During the Upgrade process, you must mark conflicting objects as “Reconciled” after resolving each conflict. To help with this process, you can use the Mass Mark as Reconciled feature to mark multiple objects as “Reconciled.” You can use this feature on objects with the following statuses:

  • Auto Merged
  • Renamed
  • Previously Reconciled

To use the Mass Mark as Reconciled feature, follow these steps:

  1. Click View Upgrade Results and Merge Conflicts.
  2. In the Result drop-down list, filter the set of objects (Auto Merged; Renamed; Previously Reconciled) on which you wish to use the Mass Mark as Reconciled feature and then click Search.
  3. If more than two objects exist in the resulting search, select Mass Mark as Reconciled from the More actions menu and then click Yes. After you click Yes, all objects that you selected will be marked as “Reconciled” and removed from current conflict list.

    Note: If only one object exits in the resulting search, or if you want to resolve conflicts for the selected objects individually, use the Mark as Reconciled button on the toolbar of each object.

Resolve Process Designer related data

To resolve the Process Designer related data, follow these steps:

  1. Click View Upgrade Results and Merge Conflicts.
  2. Click the Expert Search button from the More Actions menu, type version.reconciled#"PD Enable" in the Query field, and then click Search.
  3. In the search result, resolve the data by following the actions described in the table below.

    Reconciled Version Result Action
    PD Enable: Updated Renamed Merge the newer object from the Upgrade Utility to the object.
    PD Enable: Replaced Renamed Overwrite your systems old object with the newer version from the Upgrade Utility.
    PD Enable: Need to be removed Any Remove the objects manually.

RAD application differences

You can follow the standard conflict resolution process to resolve conflicts for RAD applications. Since a RAD application is made up of records from several different tables, the Upgrade Results report assigns an object type of Application Cluster for RAD application objects with conflicts.

Note: The codes for RAD applications for which "Current Release Level" is not marked as "SM 9.41" (for example "7.1"), are already current with the ones in Service Manager9.41. Therefore, you should not change the "Current Release Level" field to "SM 9.41". There are two cases in which a RAD application's "Current Release Level" may be marked as "SM 9.41":

  1. The RAD applications which are new in Service Manager 9.41.
  2. The RAD applications whose code has been changed in Service Manager 9.41.

Records with the Application Cluster object type appear in the Upgrade Results list only in the following scenarios:

  • Your organization has a RAD license and has tailored the RAD application in question. You can choose one of the following options when resolving a RAD application conflict:

    • Option 1: Use your customized object instead of the new object. In this case, delete the new object that is prefixed with NEW941 and the copied RAD application that is prefixed with PRE<version_number>.
    • Option 2: Use the new object instead of your customized object. In this case, you may select "Choose Upgrade" to use the new object, or you may manually delete your customized object and rename the new object by removing the NEW941 prefix.
    • Option 3: Merge the changes shipped with the new object into your customized object. In this case, find out what differences exist between the RAD applications, manually update the customized RAD application, and compile the code. Then, delete the new RAD application that is prefixed with NEW941 and the copied RAD application that is prefixed with PRE<version_number>. For example, you can use the Compare All feature in the RAD Editor to assist you in identifying which panels have changed and then manually update panels as necessary in that RAD application.
  • Your organization has applied a hotfix or patch that included a RAD application, which changed the existing RAD application when it was loaded into the system.

    • Option 3 is not applicable to you. You can keep the new version of the RAD application that came with the upgrade package or keep the RAD application that was loaded with the hotfix or patch. In most cases, you need the newest version of the RAD application, the one that came with the upgrade package. In this scenario, you can use "Revert" or "Choose Upgrade" to resolve RAD application conflicts; alternatively, if you want to resolve the conflicts manually, you can delete a RAD application and rename a RAD application:

      • To delete a RAD application, open the RAD application in the RAD Editor. Click Delete, and then click Delete All.
      • To rename a RAD application, open the RAD application in the RAD Editor. From the drop-down options menu, click Copy/Rename. Type the name of the new RAD application, and then click Rename.

Display component differences

The Upgrade Utility upgrades the display components and reports discrepancies if any of your components differ from the new versions. You can follow the standard conflict resolution process to resolve these conflicts. However, you must pay special attention to following types of display components:

  • The Display RAD application (RAD=display)
  • displayscreen records
  • displayoption records
  • displayevent records

Display application

The Display RAD application (RAD=display) is a Service Manager RAD application that provides access to RAD features without requiring RAD programming skills or RAD licensing. If a Display RAD application appears in the Upgrade Results report, perform conflict resolution on that application by following the standard conflict resolution process. HP highly recommends that you use the new version of the application.

Display screen records

Display screen records (displayscreen) are individual records identified by a unique screen ID. The displayscreen records define the attributes of a screen and provide access to the individual records for options and events. A display screen is not the same as a form. If displayscreen objects appear in the Upgrade Results report, perform conflict resolution on the objects by following the standard conflict resolution process.

Caution: There are triggers attached to the displayscreen file. Changes to the records in this file affect their associated display options and events.

Display options and display events

The Upgrade Utility upgrades the display components in the same manner as all other components. The displayoption table and displayevent table have a unique identifier stored in the ID field. The upgrade process assigns an ID to every display option, following the convention <screen id>_<action>_<number> where the screen ID and action are from the display option or event, and the number is an optional field added when multiple options have the same screen ID and action.

If options that have been added to your system have the same action as others in the same display screen, the upgrade process assigns a <number> in the order of the options' GUI option number. If an added option was not the last option in terms of GUI option number, the upgrade process does not add the additional numbers in the ID field in the same order as it would have for an out-of-box system. The upgrade process renames the added option and any option after it (in GUI option order) and does not upgrade the option or event automatically.

To make sure that this type of renaming does not happen in future upgrades, when performing conflict resolution on these options, use the ID of the renamed option, NEW941<screen id>_<action>_<number>, and change the identifier of the added options. Rename all other options to match the ID of the renamed ones. When renaming an option, use an identifier to specify that this is a customized option added for your installation. For example, apm.edit.problem_do_nothing_ACME1.

The following table gives an example of part of the display screen conflict resolution for apm.edit.problem.

Screen ID GUI action Upgrade action User action
300 do nothing update Name: apm.edit.problem_do_nothing_1
Result: This item was updated correctly.
User action: No action necessary.
400 do nothing update Name: apm.edit.problem_do_nothing_2
Result: This item was updated correctly.
User action: No action necessary.
450 (this is an option that you added) do nothing rename Name: apm.edit.problem_do_nothing_3
Result: This item was renamed. It is your customized option.
User action: Rename this object to give it a unique name. For example, apm.edit.problem_do_nothing_ACME1.

Name: NEW941apm.edit.problem_do_nothing_3
Result: This is the new SM9.41 option.
User action: Perform conflict resolution.
To perform conflict resolution, open apm.edit.problem and look at the options. Compare this option with apm.edit.problem_do_nothing_3 and NEW941apm.edit.problem_do_nothing_3.
500 do nothing The upgrade ignores this option. Result: This option does not appear in the reports.
User action: Perform conflict resolution.
To perform conflict resolution, open apm.edit.problem and look at the options. Compare this option with apm.edit.problem_do_nothing_3 and NEW941apm.edit.problem_do_nothing_3.

Perform additional manual tasks on the development environment

Clean up artifacts

The Upgrade utility does not automatically clean up artifacts that were left over by the upgrade, such as objects that were prefixed with PRE<version_number> or NEW941, which are copied and renamed from pre-upgrade objects. These objects must be deleted from the system. Otherwise, the system may not work as expected. To delete those objects automatically, the purge tool provides a function to clean up artifacts that were left over by the upgrade. To run the purge tool, follow these steps:

  1. Type *aapm.upgrade.purge in the Service Manager client command text box and then press Enter.
  2. Click I'm done, and I want to remove the duplicate data prefixed by "NEW", "PRE" and "OLD".
  3. Click OK.

Or, you may manually delete those objects. To find those objects, search the Upgrade Results list for records with a result type of "Auto Merged" "Previously Reconciled" "Reconciled" or "Renamed" and then export the list to an Excel file.

Adopt the logical name solution

In previous versions of Service Manager, the logical.name field in the device table was used as both the unique identifier and display name for a CI, causing loss of CI data integrity across Service Manager modules and complexity of CI reconciliation between integration products (for example, Service Manager does not allow duplicate CI names while UCMDB does).

Service Manager 9.41 solves the problems described above with the logical name solution. Once you have upgraded to Service Manager 9.41, you need to perform additional manual tasks to adopt the solution in your production environment. For a summary of this solution and details of these manual post-upgrade tasks, see the Service Manager Logical Name Solution white paper.

Adopt Smart Search

Service Manager 9.41 introduces Smart Search which enables you to search among a variety of content, including SharePoint documents, static web pages, and KM documents. You can integrate multiple knowledge libraries by configuring different search connectors, so that users can search among the information that they can access.

Once you have upgraded to Service Manager 9.41, follow these steps to make sure the login.DEFAULT format control record has the expected code for the Smart Search feature:

  1. Search for the login.DEFAULT format control record.
  2. Click JavaScript.
  3. Check whether the following codes exist:

    var idolserver = new SCFile('idolserverinfo');
    var rc = idolserver.doSelect('true');
    if (rc === RC_SUCCESS) {
    	vars['$lo.idol.enabled'] = idolserver['enable'];
    	vars['$lo.idol.img.enabled'] = idolserver['image.enable'];
    	if (vars['$lo.idol.enabled']) {
    		vars['$G.kmsearchengine'] = 'IDOL';
    	 }
    } 

    If these codes do not exist, you must type true in the Add field and then add these codes manually.

Migrate SLA data

Follow these steps to execute the migration script for SLA:

  1. Log on to Service Manager as a system administrator.
  2. Type db in the Service Manager command line to open Database Manager.
  3. Type migrationSetting in the Table field, and then click Search to open the Data Migration Tool form.
  4. Click Search to find existing migration scripts.
  5. Click Legacy SLA to new Agreement.
  6. On the Migration Script setting detail form, click Migrate Data to run the migration script.

Caution: If you have large amounts of SLA data, your Service Manager system may experience performance issue during the SLA data migration process. See QCCR1E133978 and QCCR1E134320 for workarounds.

Perform additional manual tasks on the development environment

Clean up artifacts

The Upgrade utility does not automatically clean up artifacts that were left over by the upgrade, such as objects that were prefixed with PRE<version_number> or NEW941, which are copied and renamed from pre-upgrade objects. These objects must be deleted from the system. Otherwise, the system may not work as expected. To delete those objects automatically, the purge tool provides a function to clean up artifacts that were left over by the upgrade. To run the purge tool, follow these steps:

  1. Type *aapm.upgrade.purge in the Service Manager client command text box and then press Enter.
  2. Click I'm done, and I want to remove the duplicate data prefixed by "NEW", "PRE" and "OLD".
  3. Click OK.

Or, you may manually delete those objects. To find those objects, search the Upgrade Results list for records with a result type of "Auto Merged" "Previously Reconciled" "Reconciled" or "Renamed" and then export the list to an Excel file.

Adopt the logical name solution

In previous versions of Service Manager, the logical.name field in the device table was used as both the unique identifier and display name for a CI, causing loss of CI data integrity across Service Manager modules and complexity of CI reconciliation between integration products (for example, Service Manager does not allow duplicate CI names while UCMDB does).

Service Manager 9.41 solves the problems described above with the logical name solution. Once you have upgraded to Service Manager 9.41, you need to perform additional manual tasks to adopt the solution in your production environment. For a summary of this solution and details of these manual post-upgrade tasks, see the Service Manager Logical Name Solution white paper.

Adopt Smart Search

Service Manager 9.41 introduces Smart Search which enables you to search among a variety of content, including SharePoint documents, static web pages, and KM documents. You can integrate multiple knowledge libraries by configuring different search connectors, so that users can search among the information that they can access.

Once you have upgraded to Service Manager 9.41, follow these steps to make sure the login.DEFAULT format control record has the expected code for the Smart Search feature:

  1. Search for the login.DEFAULT format control record.
  2. Click JavaScript.
  3. Check whether the following codes exist:

    var idolserver = new SCFile('idolserverinfo');
    var rc = idolserver.doSelect('true');
    if (rc === RC_SUCCESS) {
    	vars['$lo.idol.enabled'] = idolserver['enable'];
    	vars['$lo.idol.img.enabled'] = idolserver['image.enable'];
    	if (vars['$lo.idol.enabled']) {
    		vars['$G.kmsearchengine'] = 'IDOL';
    	 }
    } 

    If these codes do not exist, you must type true in the Add field and then add these codes manually.

Migrate Process Designer data on the development environment

Run the Process Designer Data Migration Tool to manually migrate data to HP Service Manager Codeless.

  • If you are upgrading from Service Manager 9.3x with Process Designer Content Pack 9.30.2 (PDCP 3) installed, refer to the HP Service Manager Process Designer Hybrid Guide > Chapter 2: How to upgrade to Service Manager 9.41 Hybrid for details.
  • If you are upgrading from Service Manager 9.3x with Process Designer Content Pack 9.30.3 (PDCP 4) installed, refer to the HP Service Manager Process Designer Migration Guide > Chapter 3: How to use the data migration tool for details.

Note: Do not execute PD Enablement. Instead, execute Migrate Data only.

Note: If you have large amounts of Process Designer data (especially sloresponse records), your Service Manager system may experience performance issue during the Process Designer data migration process. See QCCR1E134320 and QCCR1E133978 for workarounds.

Return the development environment to normal operation

After the upgrade, the system may not work correctly until you return it to its normal operating environment.

  1. Log out of the client and stop the Service Manager service.
  2. Restore the sm.cfg file to its original state.
  3. Restore the sm.ini file to its original state.
  4. Restart the Service Manager server and log in to the client.
  5. Regenerate your IR keys for the incidents table.

Note: Service Manager does not recompile indexes in your RDBMS. If your RDBMS is not configured to recompile indexes automatically after index changes, recompile your indexes manually.

Test the development environment

After you resolve all conflicts, perform functional testing on the upgraded system and verify that it functions properly. In addition, make a checkpoint backup of the data files to enable you to restore from this point if necessary. Refer to the documentation for your RDBMS for backup instructions.

Create a custom upgrade from the development environment

This section describes how to build a custom upgrade to apply to your production system. Before you create and apply a custom upgrade, make sure that all conflicts are resolved. A custom upgrade consists of three types of files:

  • New Service Manager 9.41 files that replaced old application files.
  • Customized application files that you retained.
  • Merged files that combine prior customization with new application functionality.

To create the custom upgrade, follow these steps:

  1. Create a custom upgrade folder on the Service Manager server. For example, C:\temp\customupgrade. Make sure that the custom upgrade folder is empty.

    Create a custom upgrade folder on the Service Manager server. For example, /tmp/customupgrade. Make sure that the custom upgrade folder is empty.

    Note: If you are connecting to the Service Manager server from a client on a remote computer, make sure that the you create the custom upgrade folder on the Service Manager server and not the client computer.

  2. Type smupgrade in the Service Manager client command line and press Enter.
  3. Click Create a Custom Upgrade.

  4. The Service Manager Upgrade Builder guides you through questions about the upgrade process. The Upgrade Utility automatically checks for duplicate records prefixed with "PRE", "NEW" or "OLD".
  5. If there is duplicate data, click Next. The Upgrade Utility asks you to confirm the purge operation.

  6. Select Yes to purge the duplicate data.

    If you select No, you will need to manually perform the purge operation as described in Perform additional manual tasks on the test environment.

  7. The system displays the patch file name and all the supported languages that are installed on your Service Manager system. Review these information, and then click Next.
  8. Specify a name for the custom upgrade package. For example, SM941.
  9. Click Next.
  10. Provide the fully qualified path to the custom upgrade directory that you created in step 1, and then click Next.

    Provide the fully qualified path to the custom upgrade directory that you created in step 1, and then click Next.

  11. Make sure that Complete Upgrade Build (Recommended) is selected and click Next.
  12. The Upgrade Utility prompts you to decide whether to filter out the unchanged objects or not. These unchanged objects include the “Already Current”, the “Kept Customer”, and the “Kept Customer Non-OOB” objects in the upgraderesults table, and other objects which are added but not by the Upgrade Utility. Filter out the unchanged objects will speed up the deployment process of the custom upgrade package.

    Select the Filter out the objects which are not changed? check box to filter out the records which do not exist in upgrade result or the results are "Already Current", "Kept Customer" or "Kept Customer Non-OOB" from the custom upgrade, and then click Next.

    Otherwise, click Next directly and all records defined in patches table (name=SM94) are built in custom upgrade.

  13. Click Yes to confirm that you want to proceed. Note that the process will destroy any existing upgrade definitions on file.
  14. When you receive a "Finished creating the transfer files for the upgrade" message, the Upgrade Utility has finished the data packaging.

Check Upgrade Utility logs and error messages on the development environment

When building the custom upgrade, the Upgrade Utility creates a set of log files, which reside in the same directory as the upgrade files. The following table describes the contents of the log files during this step.

List of upgrade logs
Log file Contents
detail.log

This file contains specific information about the upgrade, including the following:

  • All information in transfer.log and upgrade.log
  • Name of the file being purged, for example, “2014-03-20 13:58:32 dbdict: upgradestatus is purged.”
  • Progress of signature creation, for example, “2014-03-20 14:47:36 Created 100 signatures for Object on version SM940”
  • Building distribution information, for example, “2014-03-20 14:55:07 Building Distribution object for Application Cluster Action.run”
transfer.log

This file contains information about the object being transferred by the upgrade, for example, “2014-03-20 15:12:27 Initiating an export of scmessage on query "((class="error" and message.id isin {"10"})) and syslanguage~="xxx""”

upgrade.log

This file contains information about where the upgrade is at any point, including the following:

  • Starting and ending of each sub-phase, for example, “2014-03-20 14:47:32 **** Start Phase [Pre Create Action Check] ****”
  • Main activities during each sub-phase, for example, “2014-03-20 14:47:35 Signaturing records.”
  • Name of the file being exported, for example, “2014-03-20 15:11:37 Exporting: table = Object query = 'true'”

Duplicate your production environment and create a test environment

Duplicate your current Service Manager production environment and create a test environment for running and testing the custom upgrade before you apply it to the production environment. Set up the duplicate environment to match your current production server exactly. Make sure that the operating system and service pack level on the test environment is identical to the production server.

  1. Identify a server to use for the test environment.

  2. Make sure that your test system meets all of the upgrade requirements:

    • Your RDBMS version, operating system, and client/server environment must meet all criteria listed in the Service Manager 9.41 Support Matrix
    • Do not install Service Manager or the Upgrade Utility on an NFS-mounted partition. Service Manager generates significant database read/write activity, and an NFS-mounted partition is significantly slower than a local drive and can cause serious performance degradation.
  3. Install the Service Manager 9.41 platform (server and client) on the test system, following the instructions in the HP Service Manager Installation Guide.
  4. Copy your existing production system data onto your test system.
  5. Make sure that you point the test server to the data copy on the test system.

Prepare the Service Manager server on the test environment

Before you proceed, make sure that you have upgraded your server and client to version 9.41.

To prepare the server for the upgrade, edit the Service Manager configuration (sm.cfg) and initialization (sm.ini) files. Note that you must return the sm.ini and sm.cfg files to their original state after the upgrade, so you may want to keep copies of the original files.

  1. Stop the Service Manager server.
  2. Open the Service Manager configuration file (sm.cfg) with a text editor.
  3. Comment out the sm system.start line to disable the #sm system.start background processes.
  4. Add sm -sync to the end of the file if it does not yet exist. This parameter starts the sync process, which identifies and releases locks owned by inactive processes and shared memory that is not in use.

  5. If the the sm.cfg file contains more than one instance of the sm -httpPort parameter, comment out all instances except for one. Each sm -httpPort parameter starts a Service Manager server process. The upgrade needs only one process. Comment out all other parameters. Commenting out the parameters disables all of the other Service Manager processes that are not required during an upgrade.
  6. Save and close sm.cfg.
  7. Open the Service Manager initialization (sm.ini) file with a text editor.
  8. Add the sessiontimeout:1200 parameter to the end of the file if it does not exist. If this parameter exists, update it to an appropriate value. This parameter defines the number of minutes that the server waits for a client signal before the server assumes that the client session has timed out and closes the connection. A value of 1200 sets the timeout to 20 hours (1200 minutes), a period that should be long enough for an upgrade phase to complete in a typical scenario.
  9. Add the heartbeatinterval:120 parameter to the end of the file if it does not exist. This parameter controls the client heartbeat frequency. If the server does not receive a heartbeat from the client within the time-out limit as defined by the sessiontimeout parameter, the server terminates the client. All unsaved data is lost and the client must establish a new connection.
  10. If you use HP-UX, add the JVMOption(#):-Xss6M JVM option to the end of the file if it does not exist. This parameter increases the Java virtual machine stack size to 6MB.

    When you add the parameter, replace the hash symbol (#) with an option number that does not exist in the sm.ini file. For example, if the file already contains a JVMOption(0) and JVMOption(1), add JVMOption(2):-Xss6M to the file.

  11. Replace the default shared_ memory:32000000 with shared_memory:96000000. This sets the shared memory size to 96MB. However, if you have a large database, you may need to allocate more shared memory to accommodate the upgrade processing.
  12. Disable IR keys by adding ir_disable:1 to the end of the file.
  13. Save and close sm.ini.
  14. Restart the Service Manager server by executing the sm.exe command in the Service Manager installation directory (for example, C:\Program Files (x86)\HP\Service Manager 9.41\Server\RUN).

Copy the custom upgrade files to the test environment

  1. Copy from the development environment the custom upgrade folder that contains the custom upgrade files that the utility created. If you transfer the files to your system by FTP, set FTP to binary mode.
  2. Place the custom upgrade folder on the test server. For example, C:\temp\customupgrade.

    Place the custom upgrade folder on the test server. For example, /tmp/customupgrade.

Purge any existing upgrade files on the test environment

Remove any upgrade files from previous versions of Service Manager. You can run the purge tool to remove temporary objects that were generated by the Upgrade Utility. However, the purge tool may not clean up some artifacts that could be left from past upgrades. Before running the purge tool, you can search the Upgrade Results report for records with a result type of "Forced" to find left over artifacts. You can export the list of objects to an Excel spreadsheet so that you can refer to the list when you manually delete the objects from your system.

To view the Upgrade Results report, follow these steps:

  1. Log on to Service Manager with a system administrator account.
  2. Type smupgrade in the Service Manager client command line and press Enter.
  3. Click View Upgrade Results and Merge Conflicts.
  4. Select Forced in the Result drop-down list, and then press Enter.
  5. If you want to export the to a Microsoft Excel spreadsheet, from the Upgrade Results report, click the drop-down options menu and select Export to Excel. You can also select File > Print from the Upgrade Results report to print the list of records.

To run the purge tool, follow these steps:

  1. Type *aapm.upgrade.purge in the Service Manager client command line and then press Enter.
  2. Select I’m done, and I want to remove the upgrade files completely.
  3. Click OK to purge any existing upgrade files.
  4. Click OK again to exit the Purge Routine Completed dialog box.

Note: If you have converted unique keys to primary keys, the system will display error messages when purging the upgrade files. Ignore the error messages.

Load the custom upgrade files to the test environment

  1. Make sure that the Service Manager server process (sm) has write and execute privileges for the custom upgrade directory.
  2. Log on to Service Manager as a system administrator.
  3. Click Window > Preferences > HP Service Manager and clear the Client side load/unload check box.

    Caution: Failure to disable the Client side load/unload option causes the upgrade process to fail.

  4. Type db in the Service Manager command line, and then press Enter.
  5. From the Database Manager drop-down options menu, select Import/Load. Menu icon
  6. In the File Name field, navigate to the custom upgrade directory that you created, and double-click preupg.bin. For example, C:\temp\customupgrade\preupg.bin.

    In the File Name field, navigate to the custom upgrade directory that you created, and double-click preupg.bin. For example, /tmp/customupgrade/preupg.bin.

  7. Click Load FG.

    Note: If you have converted unique keys to primary keys, follow these steps:

    1. Load the preupg.bin file using Service Manager Database Manager.
    2. Purge the existing upgrade files again. The system no longer displays error messages.
    3. Load the preupg.bin file again.
  8. Type smupgrade in the Service Manager client command line, and press Enter.
  9. In the Upgrade Utility menu, click Load Transfer.
  10. Type the fully qualified path to the custom upgrade folder that you created. For example, C:\temp\customupgrade.

    Type the fully qualified path to the custom upgrade folder that you created. For example, /tmp/customupgrade.

  11. Click Next. The system loads transfer.bin and performs various mapping activities against select tables. Service Manager displays a "Transfer files loaded" message when the load is complete.
  12. Log out of the client and stop the Service Manager service.
  13. Restart the Service Manager service and log in to the client.

Apply the custom upgrade to the test environment

Tip: Note how long it takes to apply the custom upgrade so that you can determine how long the production system will be unavailable during the production upgrade.

Caution: If you experience problems such as a power failure or a network connection error while upgrading the system, you can fix the issues and rerun the Upgrade Utility. The utility resumes the upgrade from the failure point. However, if the upgrade does not resume from the failure point, restore your database to the last backup point and fix possible issues; then rerun the Upgrade Utility.

  1. Type smupgrade in the HP Service Manager command line, and then press Enter.
  2. Click Configure and Apply the Upgrade, and then click Next.
  3. The system displays a series of information for your verification, including Applications version upgrading from, Applications version upgrading to, Applications base version, Full path to the Upgrade Utility files and Language(s) to be upgraded. Verify these information and then click Next to continue. If the screen does not display the correct information, do not continue with the upgrade. Contact HP Software Customer Support.
  4. Select No since you are running the custom upgrade, and then click Next.
  5. The upgrade is now ready to start. Click Next to start the upgrade.
  6. Click Yes to confirm that you want to proceed. While the upgrade runs, the Upgrade Utility displays the progress of the upgrade by indicating which process is running, the progress of record processing, and the completion percentage for the upgrade.
  7. When you receive an UPGRADE IS COMPLETE message, the Upgrade Utility has finished the data processing and you can follow the instructions in the message to complete the next steps. After you close the message dialog, you are automatically logged out.

  8. Restart the server and then log back in to the client.
  9. Open the scversion table in Database Manager and verify that the Application Version field is 9.41.00xx. If this field displays a value other than 9.41.00xx, check the log files to identify the issue that occurred.

Finding tables and records that the Upgrade Utility did not upgrade

The Upgrade Utility does not automatically upgrade all tables and records. You can view the patches record to see a list of the tables and records that the custom upgrade includes. To view the patches record, click Tailoring > Differential Upgrade > Patch Records.

Only changed records are packaged if you selected the Filter out the objects which are not changed? check box. Customizations made to tables or records that do not appear in the patches record do not get upgraded. To make sure that the objects that you have reconciled are moved to the production system, verify the following scenarios:

  • If an object is in the patches record, and the Result field of its related “upgraderesults" record displays “Already Current”, "Kept Customer” or “Kept Customer Non-OOB”, change the Result field to “Reconciled”.

    • If an object is in the patches record, and the Result field of its related “upgraderesults" record displays “Already Current”, "Kept Customer” or “Kept Customer Non-OOB”, change the Result field to “Reconciled”.

      For example, follow these steps after you have modified the cm.open.display_newphase displayoption record:

      1. Type smupgrade in the HP Service Manager command line, and then press Enter to launch the Upgrade Utility.

      2. Click View Upgrade Results and Merge Conflicts.

      3. Type displayoption in the Object Type field, type cm.open.display_newphase in the Object Name field, and then click Search.

        Note: Some object names consist of multiple key fields, you can find the definitions in the signaturemake record.

      4. If the Result field in the search results is “Already Current”, “Kept Customer”, “Kept Customer Non-OOB”, manually change the Result field to “Reconciled”
    • If an object is in the patches record, and the Result field of its related “upgraderesults" record is not “Already Current”, "Kept Customer” or “Kept Customer Non-OOB”, no additional task is needed.
    • If an object is not in the patches record, do one of the following:

      • Create an unload file containing those objects by adding them to an unload script or using the standard HP Service Manager Unload/Export Facility,
      • Make the same changes manually by directly modifying the objects on the production system. For records that you might have deleted, you can either build a purge script for those records or delete the records manually on the production system.
  • If an object is in the patches record, and the Result field of its related “upgraderesults" record is not “Already Current”, "Kept Customer” or “Kept Customer Non-OOB”, no additional task is needed.
  • If an object is not in the patches record, do one of the following:

    • Create an unload file containing those objects by adding them to an unload script or using the standard HP Service Manager Unload/Export Facility,
    • Make the same changes manually by directly modifying the objects on the production system. For records that you might have deleted, you can either build a purge script for those records or delete the records manually on the production system.

Resolve Process Designer related data

To resolve the Process Designer related data, follow these steps:

  1. Click View Upgrade Results and Merge Conflicts.
  2. Click the Expert Search button from the More Actions menu, type version.reconciled#"PD Enable" in the Query field and then click Search.
  3. In the search result, resolve the data by following the actions described in the table below.

    Reconciled Version Result Action
    PD Enable: Need to be removed Any Remove the objects manually.

Check Upgrade Utility logs and error messages on the test environment

When applying the custom upgrade to the test system, the Upgrade Utility creates a set of log files, which reside in the same directory as the custom upgrade files.

The contents of these log files are similar to those in the log files when running an out-of-box upgrade.

Perform additional manual tasks on the test environment

This section describes changes that the Upgrade Utility cannot make automatically. Make the following changes manually.

Adopt the logical name solution

In previous versions of Service Manager, the logical.name field in the device table was used as both the unique identifier and display name for a CI, causing loss of CI data integrity across Service Manager modules and complexity of CI reconciliation between integration products (for example, Service Manager does not allow duplicate CI names while UCMDB does).

Service Manager 9.41 solves the problems described above with the logical name solution. Once you have upgraded to Service Manager 9.41, you need to perform additional manual tasks to adopt the solution in your production environment. For a summary of this solution and details of these manual post-upgrade tasks, see the Service Manager Logical Name Solution white paper.

Adopt Smart Search

Service Manager 9.41 introduces Smart Search which enables you to search among a variety of content, including SharePoint documents, static web pages, and KM documents. You can integrate multiple knowledge libraries by configuring different search connectors, so that users can search among the information that they can access.

Once you have upgraded to Service Manager 9.41, follow these steps to make sure the login.DEFAULT format control record has the expected code for the Smart Search feature:

  1. Search for the login.DEFAULT format control record.
  2. Click JavaScript.
  3. Check whether the following codes exist:

    var idolserver = new SCFile('idolserverinfo');
    var rc = idolserver.doSelect('true');
    if (rc === RC_SUCCESS) {
    	vars['$lo.idol.enabled'] = idolserver['enable'];
    	vars['$lo.idol.img.enabled'] = idolserver['image.enable'];
    	if (vars['$lo.idol.enabled']) {
    		vars['$G.kmsearchengine'] = 'IDOL';
    	 }
    } 

    If these codes do not exist, you must type true in the Add field and then add these codes manually.

Migrate SLA data

Follow these steps to execute the migration script for SLA:

  1. Log on to Service Manager as a system administrator.
  2. Type db in the Service Manager command line to open Database Manager.
  3. Type migrationSetting in the Table field, and then click Search to open the Data Migration Tool form.
  4. Click Search to find existing migration scripts.
  5. Click Legacy SLA to new Agreement.
  6. On the Migration Script setting detail form, click Migrate Data to run the migration script.

Caution: If you have large amounts of SLA data, your Service Manager system may experience performance issue during the SLA data migration process. See QCCR1E133978 and QCCR1E134320 for workarounds.

Perform additional manual tasks on the test environment

This section describes changes that the Upgrade Utility cannot make automatically. Make the following changes manually.

Adopt the logical name solution

In previous versions of Service Manager, the logical.name field in the device table was used as both the unique identifier and display name for a CI, causing loss of CI data integrity across Service Manager modules and complexity of CI reconciliation between integration products (for example, Service Manager does not allow duplicate CI names while UCMDB does).

Service Manager 9.41 solves the problems described above with the logical name solution. Once you have upgraded to Service Manager 9.41, you need to perform additional manual tasks to adopt the solution in your production environment. For a summary of this solution and details of these manual post-upgrade tasks, see the Service Manager Logical Name Solution white paper.

Adopt Smart Search

Service Manager 9.41 introduces Smart Search which enables you to search among a variety of content, including SharePoint documents, static web pages, and KM documents. You can integrate multiple knowledge libraries by configuring different search connectors, so that users can search among the information that they can access.

Once you have upgraded to Service Manager 9.41, follow these steps to make sure the login.DEFAULT format control record has the expected code for the Smart Search feature:

  1. Search for the login.DEFAULT format control record.
  2. Click JavaScript.
  3. Check whether the following codes exist:

    var idolserver = new SCFile('idolserverinfo');
    var rc = idolserver.doSelect('true');
    if (rc === RC_SUCCESS) {
    	vars['$lo.idol.enabled'] = idolserver['enable'];
    	vars['$lo.idol.img.enabled'] = idolserver['image.enable'];
    	if (vars['$lo.idol.enabled']) {
    		vars['$G.kmsearchengine'] = 'IDOL';
    	 }
    } 

    If these codes do not exist, you must type true in the Add field and then add these codes manually.

Migrate Process Designer data on the test environment

Run the Process Designer Data Migration Tool to manually migrate data to HP Service Manager Codeless.

  • If you are upgrading from Service Manager 9.3x with Process Designer Content Pack 9.30.2 (PDCP 3) installed, refer to the HP Service Manager Process Designer Hybrid Guide > Chapter 2: How to upgrade to Service Manager 9.41 Hybrid for details.
  • If you are upgrading from Service Manager 9.3x with Process Designer Content Pack 9.30.3 (PDCP 4) installed, refer to the HP Service Manager Process Designer Migration Guide > Chapter 3: How to use the data migration tool for details.

Note: Do not execute PD Enablement. Instead, execute Migrate Data only.

Note: If you have large amounts of Process Designer data (especially sloresponse records), your Service Manager system may experience performance issue during the Process Designer data migration process. See QCCR1E134320 and QCCR1E133978 for workarounds.

Return the test environment to normal operation

After the upgrade, the system may not work correctly until you return it to its normal operating environment.

  1. Log out of the client and stop the Service Manager service.
  2. Restore the sm.cfg file to its original state.
  3. Restore the sm.ini file to its original state.
  4. Restart the Service Manager server and log in to the client.
  5. Regenerate your IR keys for the incidents table.

Note: Service Manager does not recompile indexes in your RDBMS. If your RDBMS is not configured to recompile indexes automatically after index changes, recompile your indexes manually.

Test the test environment

Perform user acceptance testing on the test environment to verify that it functions properly. If there are problems that you cannot resolve, contact HP Software Support.

Prepare the Service Manager server on the production environment

Before you proceed, make sure that you have upgraded your server and client to version 9.41.

To prepare the server for the upgrade, edit the Service Manager configuration (sm.cfg) and initialization (sm.ini) files. Note that you must return the sm.ini and sm.cfg files to their original state after the upgrade, so you may want to keep copies of the original files.

  1. Stop the Service Manager server.
  2. Open the Service Manager configuration file (sm.cfg) with a text editor.
  3. Comment out the sm system.start line to disable the #sm system.start background processes.
  4. Add sm -sync to the end of the file if it does not yet exist. This parameter starts the sync process, which identifies and releases locks owned by inactive processes and shared memory that is not in use.

  5. If the the sm.cfg file contains more than one instance of the sm -httpPort parameter, comment out all instances except for one. Each sm -httpPort parameter starts a Service Manager server process. The upgrade needs only one process. Comment out all other parameters. Commenting out the parameters disables all of the other Service Manager processes that are not required during an upgrade.
  6. Save and close sm.cfg.
  7. Open the Service Manager initialization (sm.ini) file with a text editor.
  8. Add the sessiontimeout:1200 parameter to the end of the file if it does not exist. If this parameter exists, update it to an appropriate value. This parameter defines the number of minutes that the server waits for a client signal before the server assumes that the client session has timed out and closes the connection. A value of 1200 sets the timeout to 20 hours (1200 minutes), a period that should be long enough for an upgrade phase to complete in a typical scenario.
  9. Add the heartbeatinterval:120 parameter to the end of the file if it does not exist. This parameter controls the client heartbeat frequency. If the server does not receive a heartbeat from the client within the time-out limit as defined by the sessiontimeout parameter, the server terminates the client. All unsaved data is lost and the client must establish a new connection.
  10. If you use HP-UX, add the JVMOption(#):-Xss6M JVM option to the end of the file if it does not exist. This parameter increases the Java virtual machine stack size to 6MB.

    When you add the parameter, replace the hash symbol (#) with an option number that does not exist in the sm.ini file. For example, if the file already contains a JVMOption(0) and JVMOption(1), add JVMOption(2):-Xss6M to the file.

  11. Replace the default shared_ memory:32000000 with shared_memory:96000000. This sets the shared memory size to 96MB. However, if you have a large database, you may need to allocate more shared memory to accommodate the upgrade processing.
  12. Disable IR keys by adding ir_disable:1 to the end of the file.
  13. Save and close sm.ini.
  14. Restart the Service Manager server by executing the sm.exe command in the Service Manager installation directory (for example, C:\Program Files (x86)\HP\Service Manager 9.41\Server\RUN).

Copy the custom upgrade files to the production environment

  1. Copy from the development environment the custom upgrade folder that contains the custom upgrade files that the utility created. If you transfer the files to your system by FTP, set FTP to binary mode.
  2. Place the custom upgrade folder on the production server. For example, C:\temp\customupgrade.

    Place the custom upgrade folder on the production server. For example, /tmp/customupgrade.

Purge any existing upgrade files on the production environment

Remove any upgrade files from previous versions of Service Manager. You can run the purge tool to remove temporary objects that were generated by the Upgrade Utility. However, the purge tool may not clean up some artifacts that could be left from past upgrades. Before running the purge tool, you can search the Upgrade Results report for records with a result type of "Forced" to find left over artifacts. You can export the list of objects to an Excel spreadsheet so that you can refer to the list when you manually delete the objects from your system.

To view the Upgrade Results report, follow these steps:

  1. Log on to Service Manager with a system administrator account.
  2. Type smupgrade in the Service Manager client command line and press Enter.
  3. Click View Upgrade Results and Merge Conflicts.
  4. Select Forced in the Result drop-down list, and then press Enter.
  5. If you want to export the to a Microsoft Excel spreadsheet, from the Upgrade Results report, click the drop-down options menu and select Export to Excel. You can also select File > Print from the Upgrade Results report to print the list of records.

To run the purge tool, follow these steps:

  1. Type *aapm.upgrade.purge in the Service Manager client command line and then press Enter.
  2. Select I’m done, and I want to remove the upgrade files completely.
  3. Click OK to purge any existing upgrade files.
  4. Click OK again to exit the Purge Routine Completed dialog box.

Note: If you have converted unique keys to primary keys, the system will display error messages when purging the upgrade files. Ignore the error messages.

Load the custom upgrade files to the production environment

  1. Make sure that the Service Manager server process (sm) has write and execute privileges for the custom upgrade directory.
  2. Log in to Service Manager as a system administrator.
  3. Click Window > Preferences > HP Service Manager and clear the Client side load/unload check box.

    Important: Failure to disable the Client side load/unload option causes the upgrade process to fail.

  4. Type db in the HP Service Manager command line, and then press Enter.
  5. From the Database Manager drop-down options menu, select Import/Load. Menu icon
  6. In the File Name field, navigate to the custom upgrade directory that you created, and double-click preupg.bin. For example, C:\temp\customupgrade\preupg.bin.

    In the File Name field, navigate to the custom upgrade directory that you created, and double-click preupg.bin. For example, /tmp/customupgrade/preupg.bin.

  7. Click Load FG.

    Note: If you have converted unique keys to primary keys, follow these steps:

    1. Load the preupg.bin file using Service Manager Database Manager.
    2. Purge the existing upgrade files again. The system no longer displays error messages.
    3. Load the preupg.bin file again.
  8. Type smupgrade in the Service Manager command line, and press Enter.
  9. In the Upgrade Utility menu, click Load Transfer.
  10. Type the fully qualified path to the custom upgrade folder that you created. For example, C:\temp\customupgrade.

    Type the fully qualified path to the custom upgrade folder that you created. For example, /tmp/customupgrade.

  11. Click Next. The system loads transfer.bin and performs various mapping activities against select tables. Service Manager displays a "Transfer files loaded" message when the load is complete.
  12. Log out of the client and stop the Service Manager service.
  13. Restart the Service Manager service and log in to the client.

Apply the custom upgrade to the production environment

Make sure that users cannot access the production environment before you start the upgrade.

Caution: If you experience problems such as a power failure or a network connection error while upgrading the system, you can fix the issues and rerun the Upgrade Utility. The utility resumes the upgrade from the failure point. However, if the upgrade does not resume from the failure point, restore your database to the last backup point and fix possible issues; then rerun the Upgrade Utility.

  1. Type smupgrade in the HP Service Manager command line, and then press Enter.
  2. Click Configure and Apply the Upgrade, and then click Next.
  3. The system displays a series of information for your verification, including Applications version upgrading from, Applications version upgrading to, Applications base version, Full path to the Upgrade Utility files and Language(s) to be upgraded. Verify these information and then click Next to continue. If the screen does not display the correct information, do not continue with the upgrade. Contact HP Software Customer Support.
  4. Select No since you are running the custom upgrade, and then click Next.
  5. The upgrade is now ready to start. Click Next to start the upgrade.
  6. Click Yes to confirm that you want to proceed. While the upgrade runs, the Upgrade Utility displays the progress of the upgrade by indicating which process is running, the progress of record processing, and the completion percentage for the upgrade.
  7. When you receive an UPGRADE IS COMPLETE message, the Upgrade Utility has finished the data processing and you can follow the instructions in the message to complete the next steps. After you close the message dialog, you are automatically logged out.

  8. Restart the server and then log back in to the client.
  9. Open the scversion table in Database Manager and verify that the Application Version field is 9.41.00xx. If this field displays a value other than 9.41.00xx, check the log files to identify the issue that occurred.

Finding tables and records that the Upgrade Utility did not upgrade

The Upgrade Utility does not automatically upgrade all tables and records. You can view the patches record to see a list of the tables and records that the custom upgrade includes. To view the patches record, click Tailoring > Differential Upgrade > Patch Records.

Only changed records are packaged if you selected the Filter out the objects which are not changed? check box. Customizations made to tables or records that do not appear in the patches record do not get upgraded. To make sure that the objects that you have reconciled are moved to the production system, verify the following scenarios:

  • If an object is in the patches record, and the Result field of its related “upgraderesults" record displays “Already Current”, "Kept Customer” or “Kept Customer Non-OOB”, change the Result field to “Reconciled”.

    • If an object is in the patches record, and the Result field of its related “upgraderesults" record displays “Already Current”, "Kept Customer” or “Kept Customer Non-OOB”, change the Result field to “Reconciled”.

      For example, follow these steps after you have modified the cm.open.display_newphase displayoption record:

      1. Type smupgrade in the HP Service Manager command line, and then press Enter to launch the Upgrade Utility.

      2. Click View Upgrade Results and Merge Conflicts.

      3. Type displayoption in the Object Type field, type cm.open.display_newphase in the Object Name field, and then click Search.

        Note: Some object names consist of multiple key fields, you can find the definitions in the signaturemake record.

      4. If the Result field in the search results is “Already Current”, “Kept Customer”, “Kept Customer Non-OOB”, manually change the Result field to “Reconciled”
    • If an object is in the patches record, and the Result field of its related “upgraderesults" record is not “Already Current”, "Kept Customer” or “Kept Customer Non-OOB”, no additional task is needed.
    • If an object is not in the patches record, do one of the following:

      • Create an unload file containing those objects by adding them to an unload script or using the standard HP Service Manager Unload/Export Facility,
      • Make the same changes manually by directly modifying the objects on the production system. For records that you might have deleted, you can either build a purge script for those records or delete the records manually on the production system.
  • If an object is in the patches record, and the Result field of its related “upgraderesults" record is not “Already Current”, "Kept Customer” or “Kept Customer Non-OOB”, no additional task is needed.
  • If an object is not in the patches record, do one of the following:

    • Create an unload file containing those objects by adding them to an unload script or using the standard HP Service Manager Unload/Export Facility,
    • Make the same changes manually by directly modifying the objects on the production system. For records that you might have deleted, you can either build a purge script for those records or delete the records manually on the production system.

Check Upgrade Utility logs and error messages on the production environment

When applying the custom upgrade to the test system, the Upgrade Utility creates a set of log files, which reside in the same directory as the custom upgrade files.

The contents of these log files are similar to those in the log files when running an out-of-box upgrade.

Perform additional manual tasks on the production environment

This section describes changes that the Upgrade Utility cannot make automatically. Make the following changes manually.

Adopt the logical name solution

In previous versions of Service Manager, the logical.name field in the device table was used as both the unique identifier and display name for a CI, causing loss of CI data integrity across Service Manager modules and complexity of CI reconciliation between integration products (for example, Service Manager does not allow duplicate CI names while UCMDB does).

Service Manager 9.41 solves the problems described above with the logical name solution. Once you have upgraded to Service Manager 9.41, you need to perform additional manual tasks to adopt the solution in your production environment. For a summary of this solution and details of these manual post-upgrade tasks, see the Service Manager Logical Name Solution white paper.

Adopt Smart Search

Service Manager 9.41 introduces Smart Search which enables you to search among a variety of content, including SharePoint documents, static web pages, and KM documents. You can integrate multiple knowledge libraries by configuring different search connectors, so that users can search among the information that they can access.

Once you have upgraded to Service Manager 9.41, follow these steps to make sure the login.DEFAULT format control record has the expected code for the Smart Search feature:

  1. Search for the login.DEFAULT format control record.
  2. Click JavaScript.
  3. Check whether the following codes exist:

    var idolserver = new SCFile('idolserverinfo');
    var rc = idolserver.doSelect('true');
    if (rc === RC_SUCCESS) {
    	vars['$lo.idol.enabled'] = idolserver['enable'];
    	vars['$lo.idol.img.enabled'] = idolserver['image.enable'];
    	if (vars['$lo.idol.enabled']) {
    		vars['$G.kmsearchengine'] = 'IDOL';
    	 }
    } 

    If these codes do not exist, you must type true in the Add field and then add these codes manually.

Migrate SLA data

Follow these steps to execute the migration script for SLA:

  1. Log on to Service Manager as a system administrator.
  2. Type db in the Service Manager command line to open Database Manager.
  3. Type migrationSetting in the Table field, and then click Search to open the Data Migration Tool form.
  4. Click Search to find existing migration scripts.
  5. Click Legacy SLA to new Agreement.
  6. On the Migration Script setting detail form, click Migrate Data to run the migration script.

Caution: If you have large amounts of SLA data, your Service Manager system may experience performance issue during the SLA data migration process. See QCCR1E133978 and QCCR1E134320 for workarounds.

Perform additional manual tasks on the production environment

This section describes changes that the Upgrade Utility cannot make automatically. Make the following changes manually.

Adopt the logical name solution

In previous versions of Service Manager, the logical.name field in the device table was used as both the unique identifier and display name for a CI, causing loss of CI data integrity across Service Manager modules and complexity of CI reconciliation between integration products (for example, Service Manager does not allow duplicate CI names while UCMDB does).

Service Manager 9.41 solves the problems described above with the logical name solution. Once you have upgraded to Service Manager 9.41, you need to perform additional manual tasks to adopt the solution in your production environment. For a summary of this solution and details of these manual post-upgrade tasks, see the Service Manager Logical Name Solution white paper.

Adopt Smart Search

Service Manager 9.41 introduces Smart Search which enables you to search among a variety of content, including SharePoint documents, static web pages, and KM documents. You can integrate multiple knowledge libraries by configuring different search connectors, so that users can search among the information that they can access.

Once you have upgraded to Service Manager 9.41, follow these steps to make sure the login.DEFAULT format control record has the expected code for the Smart Search feature:

  1. Search for the login.DEFAULT format control record.
  2. Click JavaScript.
  3. Check whether the following codes exist:

    var idolserver = new SCFile('idolserverinfo');
    var rc = idolserver.doSelect('true');
    if (rc === RC_SUCCESS) {
    	vars['$lo.idol.enabled'] = idolserver['enable'];
    	vars['$lo.idol.img.enabled'] = idolserver['image.enable'];
    	if (vars['$lo.idol.enabled']) {
    		vars['$G.kmsearchengine'] = 'IDOL';
    	 }
    } 

    If these codes do not exist, you must type true in the Add field and then add these codes manually.

Migrate Process Designer data on the production environment

Run the Process Designer Data Migration Tool to manually migrate data to HP Service Manager Codeless.

  • If you are upgrading from Service Manager 9.3x with Process Designer Content Pack 9.30.2 (PDCP 3) installed, refer to the HP Service Manager Process Designer Hybrid Guide > Chapter 2: How to upgrade to Service Manager 9.41 Hybrid for details.
  • If you are upgrading from Service Manager 9.3x with Process Designer Content Pack 9.30.3 (PDCP 4) installed, refer to the HP Service Manager Process Designer Migration Guide > Chapter 3: How to use the data migration tool for details.

Note: Do not execute PD Enablement. Instead, execute Migrate Data only.

Note: If you have large amounts of Process Designer data (especially sloresponse records), your Service Manager system may experience performance issue during the Process Designer data migration process. See QCCR1E134320 and QCCR1E133978 for workarounds.

Return the production environment to normal operation

After the upgrade, the system may not work correctly until you return it to its normal operating environment.

  1. Log out of the client and stop the Service Manager service.
  2. Restore the sm.cfg file to its original state.
  3. Restore the sm.ini file to its original state.
  4. Restart the Service Manager server and log in to the client.
  5. Regenerate your IR keys for the incidents table.

Note: Service Manager does not recompile indexes in your RDBMS. If your RDBMS is not configured to recompile indexes automatically after index changes, recompile your indexes manually.

Apply post-upgrade updates to the production environment

For all the existing integrations to work correctly, you must remove and re-create certain integrations in the Integration Manager. These integrations include the following:

  • Release Control integration
  • BSM OMi integration

For more information about your specific integration, see the Integrations section in the Service Manager Help Center.

Test the production environment

Test the upgraded environment and verify that it functions properly. If there are problems that you cannot resolve, contact HP Software Support.

Next steps

Congratulations! You have completed the upgrade to Service Manager 9.41. You can view the Service Manager 9.41 Help Center for information about database dictionaries, Database Manager, Forms Designer, Request Management, and the Display application.

Troubleshooting

Before you contact HP Service Manager Customer Support, try the following troubleshooting instructions to identify and resolve your issues. Click a symptom below to view information about the symptom and a possible resolution for the issue.

© 1994-2015 Hewlett-Packard Development Company, L.P.