Pega Platform 82 Upgrade Websphere Oracle 0
Pega Platform 82 Upgrade Websphere Oracle 0
Trademarks
For Pegasystems Inc. trademarks and registered trademarks, all rights reserved. All other trademarks or
service marks are property of their respective holders.
For information about the third-party software that is delivered with the product, refer to the third-party
license file on your installation media that is specific to your release.
Notices
This publication describes and/or represents products and services of Pegasystems Inc. It may contain
trade secrets and proprietary information that are protected by various federal, state, and international
laws, and distributed under licenses restricting their use, copying, modification, distribution, or transmittal
in any form without prior written authorization of Pegasystems Inc.
This publication is current as of the date of publication only. Changes to the publication may be
made from time to time at the discretion of Pegasystems Inc. This publication remains the property
of Pegasystems Inc. and must be returned to it upon request. This publication does not imply any
commitment to offer or deliver the products or services described herein.
This publication may include references to Pegasystems Inc. product features that have not been licensed
by you or your company. If you have questions about whether a particular capability is included in your
installation, please consult your Pegasystems Inc. services consultant.
Although Pegasystems Inc. strives for accuracy in its publications, any publication may contain
inaccuracies or typographical errors, as well as technical inaccuracies. Pegasystems Inc. shall not be liable
for technical or editorial errors or omissions contained herein. Pegasystems Inc. may make improvements
and/or changes to the publication at any time without notice.
Any references in this publication to non-Pegasystems websites are provided for convenience only and
do not serve as an endorsement of these websites. The materials at these websites are not part of the
material for Pegasystems products, and use of those websites is at your own risk.
Information concerning non-Pegasystems products was obtained from the suppliers of those products,
their publications, or other publicly available sources. Address questions about non-Pegasystems
products to the suppliers of those products.
This publication may contain examples used in daily business operations that include the names of
people, companies, products, and other third-party publications. Such examples are fictitious and any
similarity to the names or other data used by an actual business enterprise or individual is coincidental.
This document is the property of:
Pegasystems
One Rogers Street
Cambridge, MA 02142-1209, USA
Phone: 617-374-9600 Fax: 617-374-9620
www.pega.com
Document: Pega Platform Upgrade Guide
Publication date: March 07, 2019
Feedback
If you have comments for how we can improve our materials, send an email to [email protected].
Contents
Overview..................................................................................................................................................................................................... 6
In-place or out-of-place upgrades and single or double data migration............................................................................................6
Post-upgrade configuration....................................................................................................................................................................43
Upgrading from PRPC 6.1 SP2 and earlier: updating ruleset columns............................................................................................. 43
For Docker, multiple VMs, or multiple NICs: Setting the public address.......................................................................................... 43
Reconfiguring the application server.....................................................................................................................................................44
Defining default schemas........................................................................................................................................................ 44
Redeploying the Pega Platform file......................................................................................................................................... 45
IBM WebSphere: Redeploying Pega Platform...........................................................................................................45
Logging in and changing the administrator password........................................................................................................................47
Enabling rule creation on the production system............................................................................................................................... 47
Changing the default path to logs......................................................................................................................................................... 47
Configuring logging...................................................................................................................................................................................48
Migrating auto-generated rules in a highly available system after an upgrade or patch...............................................................48
Restarting Pega Platform.........................................................................................................................................................................49
Locking and rolling ruleset versions...................................................................................................................................................... 50
Upgrading from Pega 7.1.7 through 7.2.1: Rebuilding search indexes............................................................................................. 50
Optional: Upgrading from Pega 7.1.6 and earlier: Configuring the default search nodes and storage directory........................50
Running the final rules conflict report.................................................................................................................................................. 52
Upgrading from Pega 7.2.2 or earlier: Adopting APIs and rules for Pega Survey........................................................................... 53
Scheduling column population jobs...................................................................................................................................................... 54
Upgrading from Pega 7.2.2 or earlier: Upgrading access role names to enable notifications.......................................................55
Upgrading from Pega 7.2.2 or earlier: Enabling access to environmental information..................................................................56
Optional: Leveraging the current UI Kit rules.......................................................................................................................................56
Enabling operators................................................................................................................................................................................... 57
Running upgrade utilities........................................................................................................................................................................ 57
Cleaning up unused tables......................................................................................................................................................................58
Upgrading your custom applications.....................................................................................................................................................58
Upgrading your application schema...................................................................................................................................................... 58
Review log files..........................................................................................................................................................................................59
Testing your applications.........................................................................................................................................................................59
Enabling server-side screen captures for application documents.....................................................................................................59
Configuring PhantomJS REST server security for including screen captures in an application document..................... 60
Upgrading from Pega 7.3, 7.3.1, or 7.4: Granting access to the Requester Management landing page.......................................61
Reviewing and updating agent configuration for node classification............................................................................................... 61
Updating the service email for Pulse email replies.............................................................................................................................62
Configuring local help for systems without internet access.............................................................................................................. 62
Appendices................................................................................................................................................................................................ 64
Migrate script properties......................................................................................................................................................................... 64
Editing the setupDatabase.properties file.............................................................................................................................................66
Database connection properties and script arguments....................................................................................................... 67
Additional upgrade properties..................................................................................................................................................69
Optional: Generating and applying DDL............................................................................................................................................... 70
Generating and applying DDL in an out-of-place upgrade...................................................................................................70
Generating and applying DDL in an in-place upgrade.......................................................................................................... 73
Generating the DDL file...............................................................................................................................................73
Applying the DDL file................................................................................................................................................... 74
Editing the setupDatabase.properties file to bypass DDL generation................................................................................ 74
Installing user-defined functions............................................................................................................................................................ 74
Switching to Hazelcast embedded mode from Apache Ignite client-server mode..........................................................................75
Reverse an out-of-place upgrade........................................................................................................................................................... 76
Limitations....................................................................................................................................................................................76
Upgrade reversal details............................................................................................................................................................77
Reversing an upgrade................................................................................................................................................................ 77
Troubleshoot upgrade errors..................................................................................................................................................................78
Resuming or restarting after a failed deployment................................................................................................................ 78
Recovering from a faulty split-schema migration.................................................................................................................. 79
PEGA0055 alert — clocks not synchronized between nodes............................................................................................... 79
Overview
Use the Pega documentation to install or upgrade your system.
This guide describes how to upgrade an existing instance of PRPC or Pega Platform to 8.2.
To install a new version of Pega Platform, see the Pega 8.2 Installation Guide for your database and
application server platform.
Caution: This release introduces new features and functionality that might cause compatibility
issues with your existing application. You might need to take additional actions before deploying.
For information about new features, see the Pega Community. For information about post-upgrade
actions, see Post-upgrade configuration.
upgrade even though you have access to only one database at a time. See the detailed instructions
under Performing an out-of-place upgrade with a double migration.
• If your system does not have any of these restrictions but still requires minimal downtime, perform a
single-migration upgrade:
1. Migrate the contents of the original schemas to a temporary schema on the original database.
2. Upgrade the temporary schema. The temporary schema becomes the new rules schema.
For more information, see Performing an out-of-place upgrade with a single migration.
Environment considerations
Consider your application customization, libraries, database, and special site requirements before
continuing.
• Custom applications — If you are using any custom applications, confirm whether your custom
applications are supported for this version of the Pega Platform. It might be necessary to upgrade your
versions of the custom applications to work with the new version of the Pega Platform.
• Customized Pega Platform database — If you made changes to the Pega Platform database schema,
incorporate those changes into the database after you upgrade the database schema. In particular,
you should merge any changes to triggers, views, or stored procedures that you made in the previous
version, and review any custom rules or work tables that you created. The upgrade procedure leaves
tables you have added to the schema in place, but you might need to modify the tables to match
changes in the Pega schema.
Also verify that schema references in triggers, stored procedures, and views correctly reflect the new
schema names.
• Third-party or custom libraries — If you have integrated third-party or custom libraries into your
system, make sure you have a copy of them before upgrading. The upgrade might overwrite your
deployed libraries.
• Special site requirements — Your site might have special deployment, integration, or security
requirements. Schedule an early review of the upgrade procedure with the appropriate system and
database administrators.
System requirements
Before you deploy, ensure that your system meets the following minimum requirements.
Node classification
Optimize performance and provide higher scalability and stability in a cluster by using node classification,
which is the process of separating nodes, segregating them by purpose, and predefining their behavior.
By configuring a node with a node type, you dedicate the node to perform particular actions and run
only those agents, listeners, job schedulers, and queue processors that are mapped to the node type. For
example, if a set of nodes is dedicated to user requests, background processes can be disabled to improve
performance.
Every node that is started with the same node type uses the same template and follows the same
behavior.
For more information, see Node classification on the Pega Community.
Commit hotfixes
Before you deploy, commit any uncommitted hotfixes on your system. If there are uncommitted hotfixes
when you deploy, the hotfixes are automatically committed. For information about committing hotfixes,
see the help.
Port configuration
Before you configure your application server, ensure that the following ports are open and available:
• Search (Elasticsearch) — one TCP port in the range 9300-9399 (default 9300). This port is used for
internal node-to-node communication only, and should not be externally accessible.
• Cluster communication — leave open the port range 5701-5800. By default, the system begins with
port 5701, and then looks for the next port in the sequence (5702, followed by 5703 and so on). To
override the default port range, set a different value for the initialization/cluster/ports setting in the
prconfig.xml file.
• Pega Platform can include multiple servers, or nodes, and each node can contain multiple Java Virtual
Machines (JVMs). The number of available ports in this range needs to be greater than or equal to the
greatest number of JVMs on any one node in the cluster. For example, if there are three JVMs on one
node, and seven JVMs on another node, there must be at least seven ports available.
1. Open the IBM WebSphere Administrative Console and navigate to the security section.
2. Enter the following argument to set security to urandom:
-Djava.security.egd=file:///dev/urandom
3. Save the changes.
1. Open the IBM WebSphere administrative console and navigate to the security section.
2. Configure at least two nodes as stream nodes by entering the following JVM argument:
-DNodeType=Stream
1. On the database server, open the file SPFILE BNAME.ora in the database directory.
2. Verify that the settings are as follows:
NLS_LENGTH_SEMANTICS=CHAR scope=both;
NLS_CHARACTERSET=AL32UTF8;
NLS_NCHAR_CHARACTERSET=AL16UTF16;
3. If the semantics settings differ, migrate the database character set. For more information, see your
Oracle documentation and the Pega Community article Migrating Database Character Sets for Oracle.
Database users
This section describes deployment and runtime users and lists all required permissions.
• Deployment user — This user performs actions only during the deployment.
• Oracle users — Because Oracle has a one-to-one relationship between users and schemas, if you have
a split-schema configuration, you must have separate users for the rules schema, the data schema,
and any optional customer data schema.
◦ Oracle rules schema owner — Only used to create the schema. The Oracle rules schema owner
can be associated with either individual tablespaces or a common tablespace. Pegasystems
recommends separate tablespaces for each user in critical SDLC environments.
◦ The Oracle data schema owner is the Base runtime user.
• Run-time users — These users perform actions on the Pega Platform after the deployment. In a dual-
user configuration, an Admin user is granted full privileges, and a Base user is granted a smaller
subset. Pega recommends the dual-user configuration:
◦ Base user — The user who runs the Pega Platform. Most run-time operations use the Base user and
associated data source.
The Base user is the Oracle data schema user.
◦ Admin user — The user with full privileges for advanced administrative operations.
Pega recommends that you use the dual-user configuration with separate Admin and Base users;
however, you can create a single Base user with both sets of privileges. If there is no separate Admin
user, the Pega Platform uses the Base user for all run-time operations.
Note: If you have only a Base user, the system cannot perform automatic schema-change
operations.
Note: If you plan to manually install the user-defined functions (UDFs) from Pega, the database
user who will install the UDFs cannot have the sysadmin role. Having the sysadmin role changes
the default schema name and causes installation problems. For more information about UDFs, see
Installing user-defined functions.
1. On the database server, run the following SQL statement to create users and grant the users unlimited
access to the default USERS tablespace.
ALTER USER <user> DEFAULT TABLESPACE USERS QUOTA UNLIMITED ON USERS;
2. Use the Oracle tools to assign the appropriate roles and privileges to this user.
3. Repeat steps 1 and 2 for the remaining users:
• Oracle schema users:
◦ For single schemas, create one Oracle schema user
◦ For split-schemas, create separate Oracle rules and data schema users.
• Deployment user
• Base user
1. Log in to the Enterprise Manager using the URL provided by the Database Configuration Assistant.
The URL is usually in the form: https://host:5501/em
2. Enter the user name and password and click Login.
• User name = sys
• Password = password
3. Select Security > Users.
4. Select Actions > Create User. Accept the other defaults.
5. On the User Account step, enter the name and password for the user you are creating.
6. Click the right arrow.
a. If you created a dedicated tablespace, choose that tablespace from the menu.
b. Accept the other defaults.
7. Click the right arrow.
8. Select the privileges for this user and click OK.
9. Repeat these steps to configure the remaining users.
5. Migrate the upgraded temporary upgrade schema to the new rules schema.
6. If you are not using the high availability configuration, shut down the existing system.
7. Use the upgrade script to upgrade the data schema and reference the new rules schema.
8. For high availability systems, after the upgrade completes, enable rule creation.
Migrating the rules schema when you have access to both databases
If you have access to both the temporary and original databases, run the migrate script once to migrate
the rules schema.
1. Use a text editor to edit the migrateSystem.properties file in the scripts directory:
Pega-image\scripts\migrateSystem.properties
2. Configure the source properties. For more information, see Migrate script properties.
Note: If you are starting with a single-schema system, the pega.source.rules.schema and
pega.source.data.schema names are the same.
# Connection Information
pega.source.jdbc.driver.jar=full path/DRIVER.jar
pega.source.jdbc.driver.class=database driver class
pega.source.database.type=database vendor type
pega.source.jdbc.url=URL of database
pega.source.jdbc.username=Deployment user name
pega.source.jdbc.password=password
3. Configure the target properties. Leave the target data schema name blank:
pega.target.jdbc.driver.jar=full path/DRIVER.JAR
pega.target.jdbc.driver.class=database driver class
pega.target.database.type=database vendor type
pega.target.jdbc.url=database URL
pega.target.jdbc.username=Deployment user name
pega.target.jdbc.password=password
pega.target.rules.schema=temporary upgrade schema
pega.target.data.schema=
pega.move.admin.table=true
pega.clone.generate.xml=true
pega.clone.create.ddl=true
pega.clone.apply.ddl=true
pega.bulkmover.unload.db=true
pega.bulkmover.load.db=true
pega.rules.objects.generate=false
pega.rule.objects.apply=false
Migrating the rules schema when you have access to one database
If you can only access one database at a time (for example, if there is a firewall between the two servers),
run the migration script twice: first on a system that can access the original source database, and then
where it can access the temporary target database.
Make sure that the system that accesses the temporary database has access to the bulkmover directory
and the DDL generated from the source database.
1. On a system that can access the original database, export rules from the original database.
a. Use a text editor to edit the migrateSystem.properties file in the scripts directory:
Pega-image\scripts\migrateSystem.properties
b. Configure the source properties. For more information, see Migrate script properties.
Note: If you are starting with a single-schema system, the pega.source.rules.schema and
pega.source.data.schema names are the same.
# Connection Information
pega.source.jdbc.driver.jar=full path/DRIVER.jar
pega.source.jdbc.driver.class=database driver class
pega.source.database.type=database vendor type
pega.source.jdbc.url=URL of database
pega.source.jdbc.username=Deployment user name
pega.source.jdbc.password=password
pega.source.rules.schema=original rules schema name
pega.source.data.schema=original data schema name
c. Configure the target properties. Leave the target data schema name blank:
pega.target.jdbc.driver.jar=full path/DRIVER.JAR
pega.target.jdbc.driver.class=database driver class
pega.target.database.type=database vendor type
pega.target.jdbc.url=database URL
pega.target.jdbc.username=Deployment user name
pega.target.jdbc.password=password
pega.target.rules.schema=temporary upgrade schema
pega.target.data.schema=
pega.move.admin.table=true
pega.clone.generate.xml=true
pega.clone.create.ddl=true
pega.clone.apply.ddl=false
pega.bulkmover.unload.db=true
pega.bulkmover.load.db=false
pega.rules.objects.generate=false
pega.rule.objects.apply=false
pega.move.admin.table=true
pega.clone.generate.xml=false
pega.clone.create.ddl=false
pega.clone.apply.ddl=true
pega.bulkmover.unload.db=false
pega.bulkmover.load.db=true
pega.rules.objects.generate=false
pega.rule.objects.apply=false
9. Specify whether you will have your database administrator manually apply the DDL changes to the
schema. These changes include the user-defined functions (UDF) supplied by Pega. By default, the IUA
generates and applies the schema changes to your database.
• To generate and apply the DDL outside the IUA, select Bypass Automatic DDL Application and
continue the deployment. After you complete the deployment, manually generate and apply the
DDL and UDF. For more information, see Optional: Generating and applying DDL and Optional:
Installing user-defined functions.
• To have the IUA automatically apply the DDL changes and the UDF, clear Bypass Automatic DDL
Application.
10. Click Next.
11. Select the upgrade options and click Next:
• Optional: Select Update applications schema. The Update Applications Schema utility updates
all auto-generated tables with the schema changes in the latest base tables. You can also run the
update applications schema utility later from the prpcUtils.bat or prpcUtils.sh script, or from
Dev Studio. For information about using the Update Applications Schema utility, see the online help.
• Optional: Select Run rulebase cleanup to permanently remove old rules. In most cases,
removing older rules improves the general performance of the system. Running the cleanup script
permanently removes rules older than the upgraded version.
• Optional: Select Update existing applications to modify your existing applications to support the
upgraded version of the Pega Platform. The specific actions depend on your current version of
PRPC. If you do not automatically update the applications as part of the IUA, follow the instructions
in Updating existing applications to update the applications as part of the post-upgrade process.
• Optional: Select Rebuild database indexes to have the IUA to rebuild the database indexes after
the rulebase loads. The IUA rebuilds the database indexes to ensure good performance in the
upgraded system. The amount of time this process adds to the upgrade procedure depends on the
size of your database.
12. Click Start to begin loading the rulebase. During the upgrade, the log window might appear inactive
when the IUA is processing larger files.
13. Click Back to return to the previous screen, and then click Exit to close the IUA.
The rulebase upgrade can take several hours, depending on the proximity of the database to the system
running the script and available resources.
Pega Platform writes command-line output to a file in the Pega-image\scripts\logs directory.
Note: To minimize the time required , run the migration scripts from the same data center as the
database server.
Migrating to the new rules schema when the system has access to both
databases
If your system has access to the temporary and original databases, run the migrate script once to migrate
to the new rules schema.
1. Use a text editor to edit the migrateSystem.properties file in the scripts directory:
Pega-image\scripts\migrateSystem.properties
2. Configure the source properties. For more information, see Migrate script properties.
# Connection Information
pega.source.jdbc.driver.jar=full path/DRIVER.jar
pega.source.jdbc.driver.class=database driver class
pega.source.database.type=database vendor type
pega.source.jdbc.url=database URL
pega.source.jdbc.username=Deployment user name
pega.source.jdbc.password=password
pega.source.rules.schema=temporary upgrade schema
pega.source.data.schema=temporary upgrade schema
pega.target.jdbc.driver.jar=full path/DRIVER.JAR
pega.target.jdbc.driver.class=database driver class
pega.target.database.type=database vendor type
pega.target.jdbc.url=database URL
pega.target.jdbc.username=Deployment user name
pega.target.jdbc.password=password
pega.target.rules.schema=new rules schema
pega.target.data.schema=original data schema name
pega.move.admin.table=false
pega.clone.generate.xml=true
pega.clone.create.ddl=true
pega.clone.apply.ddl=true
pega.bulkmover.unload.db=true
pega.bulkmover.load.db=true
pega.rules.objects.generate=true
pega.rules.objects.apply=true
Migrating to the new rules schema when the system has access to one
database at a time (firewall)
If the system can only access one database at a time (for example, if there is a firewall between the two
servers), run the migration script twice: first on a system that can access the original source database, and
then on a system that can access the temporary target database.
Make sure that the system that accesses the temporary database has access to the bulkmover directory
and the DDL generated from the source database.
1. On a system that can access the original database, export rules from the original database.
a. Use a text editor to edit the migrateSystem.properties file in the scripts directory:
Pega-image\ scripts\migrateSystem.properties
b. Configure the source properties. For more information, see Migrate script properties.
# Connection Information
pega.source.jdbc.driver.jar=/path-to-the-database-JAR-file/DRIVER.jar
pega.source.jdbc.driver.class=database driver class
pega.source.database.type=database vendor type
pega.source.jdbc.url=URL of database
pega.source.jdbc.username=Deployment user name
pega.source.jdbc.password=password
pega.source.rules.schema=temporary upgrade schema
pega.source.data.schema=temporary upgrade schema
pega.move.admin.table=false
pega.clone.generate.xml=true
pega.clone.create.ddl=false
pega.clone.apply.ddl=false
pega.bulkmover.unload.db=true
pega.bulkmover.load.db=false
pega.rules.objects.generate=false
pega.rules.objects.apply=false
b. Verify the target, bulkmover, and temporary directory properties. Set the target rules schema to the
original rules schema:
pega.target.rules.schema=new rules schema name
c. Configure the operations to be performed by the utility as shown below:
pega.admin.table=false
pega.clone.generate.xml=false
pega.clone.create.ddl=true
pega.clone.apply.ddl=true
pega.bulkmover.unload.db=false
pega.bulkmover.load.db=true
pega.rules.objects.generate=true
pega.rules.objects.apply=true
1. If you have not already done so, configure the connection properties. Use your current data
schema name for data.schema.name. Use the new rules schema name for rules.schema.name.
If you have an optional customer data schema separate from the Pega data schema, enter the
customerdata.schema.name. For more information, see Editing the setupDatabase.properties file.
# Connection Information
pega.jdbc.driver.jar=/path-to-the-database-JAR-file/DRIVER.jar
pega.jdbc.driver.class=database driver class
pega.database.type=database vendor type
pega.jdbc.url=URL of the database
pega.jdbc.username=Deployment user name
pega.jdbc.password=password
rules.schema.name=new rules schema
2. Shut down the application server and ensure that no other processes are using the data schema.
3. Open a command prompt, and navigate to the scripts directory.
4. Run upgrade.bat or ./upgrade.sh for Linux, passing in the --dataOnly argument and true
parameter, for example:
upgrade.bat --dataOnly true
3. Migrate only the rules from the current rules schema to the new rules schema.
5. If you are not using the high availability configuration, shut down the existing system.
6. Upgrade the data schema.
7. For high availability systems, after the upgrade completes, enable rule creation.
1. Use a text editor to edit the migrateSystem.properties file in the scripts directory of your
distribution image:
Pega-image\scripts\migrateSystem.properties
2. Configure the source properties. For more information, see Migrate script properties.
# Connection Information
pega.source.jdbc.driver.jar=full path/DRIVER.jar
pega.source.jdbc.driver.class=database driver class
pega.source.database.type=database vendor type
pega.source.jdbc.url=URL of database
pega.source.jdbc.username=Deployment user name
pega.source.jdbc.password=password
pega.source.rules.schema=original rules schema name
pega.source.data.schema=original data schema name
3. Configure the target properties. Leave the target data schema name blank:
pega.target.jdbc.driver.jar=full path/DRIVER.JAR
pega.target.jdbc.driver.class=database driver class
pega.target.database.type=database vendor type
pega.target.jdbc.url=database URL
pega.target.jdbc.username=Deployment user name
pega.target.jdbc.password=password
pega.target.rules.schema=new rules schema
pega.move.admin.table=true
pega.clone.generate.xml=true
pega.clone.create.ddl=true
pega.clone.apply.ddl=true
pega.bulkmover.unload.db=true
pega.bulkmover.load.db=true
pega.rules.objects.generate=false
pega.rule.objects.apply=false
The upgrade can last for several hours and the time can vary widely based on network proximity to the
database server.
9. Specify whether you will have your database administrator manually apply the DDL changes to the
schema. These changes include the user-defined functions (UDF) supplied by Pega. By default, the IUA
generates and applies the schema changes to your database.
• To generate and apply the DDL outside the IUA, select Bypass Automatic DDL Application and
continue the deployment. After you complete the deployment, manually generate and apply the
DDL and UDF. For more information, see Optional: Generating and applying DDL and Optional:
Installing user-defined functions.
• To have the IUA automatically apply the DDL changes and the UDF, clear Bypass Automatic DDL
Application.
10. Click Next.
11. Select the upgrade options and click Next:
• Optional: Select Update applications schema. The Update Applications Schema utility updates
all auto-generated tables with the schema changes in the latest base tables. You can also run the
update applications schema utility later from the prpcUtils.bat or prpcUtils.sh script, or from
Dev Studio. For information about using the Update Applications Schema utility, see the online help.
• Optional: Select Run rulebase cleanup to permanently remove old rules. In most cases,
removing older rules improves the general performance of the system. Running the cleanup script
permanently removes rules older than the upgraded version.
• Optional: Select Update existing applications to modify your existing applications to support the
upgraded version of the Pega Platform. The specific actions depend on your current version of
PRPC. If you do not automatically update the applications as part of the IUA, follow the instructions
in Updating existing applications to update the applications as part of the post-upgrade process.
• Optional: Select Rebuild database indexes to have the IUA to rebuild the database indexes after
the rulebase loads. The IUA rebuilds the database indexes to ensure good performance in the
upgraded system. The amount of time this process adds to the upgrade procedure depends on the
size of your database.
12. Click Start to begin loading the rulebase. During the upgrade, the log window might appear inactive
when the IUA is processing larger files.
13. Click Back to return to the previous screen, and then click Exit to close the IUA.
The rulebase upgrade can take several hours, depending on the proximity of the database to the system
running the script and available resources.
Pega Platform writes command-line output to a file in the Pega-image\scripts\logs directory.
1. If you have not already done so, configure the connection properties. Use your current data
schema name for data.schema.name. Use the new rules schema name for rules.schema.name.
If you have an optional customer data schema separate from the Pega data schema, enter the
customerdata.schema.name. For more information, see Editing the setupDatabase.properties file.
# Connection Information
pega.jdbc.driver.jar=/path-to-the-database-JAR-file/DRIVER.jar
pega.jdbc.driver.class=database driver class
pega.database.type=database vendor type
pega.jdbc.url=URL of the database
pega.jdbc.username=Deployment user name
pega.jdbc.password=password
rules.schema.name=new rules schema
data.schema.name=current data schema
customerdata.schema.name=optional-customer-data-schema
2. Shut down the application server and ensure that no other processes are using the data schema.
3. Open a command prompt, and navigate to the scripts directory.
4. Run upgrade.bat or ./upgrade.sh for Linux, passing in the --dataOnly argument and true
parameter, for example:
upgrade.bat --dataOnly true
9. Specify whether you will have your database administrator manually apply the DDL changes to the
schema. These changes include the user-defined functions (UDF) supplied by Pega. By default, the IUA
generates and applies the schema changes to your database.
• To generate and apply the DDL outside the IUA, select Bypass Automatic DDL Application and
continue the deployment. After you complete the deployment, manually generate and apply the
DDL and UDF. For more information, see Optional: Generating and applying DDL and Optional:
Installing user-defined functions.
• To have the IUA automatically apply the DDL changes and the UDF, clear Bypass Automatic DDL
Application.
10. Click Next.
11. Select the upgrade options and click Next:
• Optional: Select Update applications schema. The Update Applications Schema utility updates
all auto-generated tables with the schema changes in the latest base tables. You can also run the
update applications schema utility later from the prpcUtils.bat or prpcUtils.sh script, or from
Dev Studio. For information about using the Update Applications Schema utility, see the online help.
• Optional: Select Run rulebase cleanup to permanently remove old rules. In most cases,
removing older rules improves the general performance of the system. Running the cleanup script
permanently removes rules older than the upgraded version.
• Optional: Select Update existing applications to modify your existing applications to support the
upgraded version of the Pega Platform. The specific actions depend on your current version of
PRPC. If you do not automatically update the applications as part of the IUA, follow the instructions
in Updating existing applications to update the applications as part of the post-upgrade process.
• Optional: Select Rebuild database indexes to have the IUA to rebuild the database indexes after
the rulebase loads. The IUA rebuilds the database indexes to ensure good performance in the
upgraded system. The amount of time this process adds to the upgrade procedure depends on the
size of your database.
12. Click Start to begin loading the rulebase. During the upgrade, the log window might appear inactive
when the IUA is processing larger files.
13. Click Back to return to the previous screen, and then click Exit to close the IUA.
1. If you have not done so already, edit the setupDatabase.properties file. For more information, see
Editing the setupDatabase.properties file.
a. Open the setupDatabase.properties file in the scripts directory of your distribution image:
Directories.distributionDirectory\scripts\setupDatabase.properties
b. Configure the connection properties. Use the temporary upgrade schema name for both the rules
schema and data schema names.
c. Optional: If you have a separate customer data schema, set the target schema name:
pega.target.customerdata.schema=current-customer-data-schema
d. Optional: If you are repeating a failed upgrade, configure the resume property:
• To resume the upgrade from the last successful step, set automatic.resume=true.
• To restart the upgrade from the beginning, set automatic.resume=false.
e. Save and close the file.
2. Open a command prompt and navigate to the scripts directory.
3. Run either upgrade.bat or upgrade.sh.
The rulebase upgrade can take several hours, depending on the proximity of the database to the system
running the script.
Pega Platform writes command-line output to a file in the Pega-image\scripts\logs directory.
Post-upgrade configuration
This section describes additional tasks that you must perform after Pega Cloud Services finishes
upgrading your environment.
1. In the IBM WebSphere Administrative Console, select Environment > Naming > Name Space
Bindings to display the Name space bindings page.
2. Create the rules schema binding identifier:
a. For the Scope, select server, and click New.
b. For the binding type, select String and click Next.
c. On the Step 2: Specify basic properties screen, enter the following values:
• Binding identifier: PegaRULESDefaultSchema
• Name in the name space relative to lookup name prefix: prconfig/database/databases/
PegaRULES/defaultSchema
• String Value: the schema name of your rules schema.
d. Click Next.
e. On the Summary panel, click Finish.
f. Click Save in the Messages box at the top of the Name Space Bindings screen.
3. Repeat step 2 to create the data schema binding identifier, but specify the following properties on the
Step 2: Specify basic properties screen:
• Binding identifier: PegaDATADefaultSchema
• Name in the name space relative to lookup name prefix: prconfig/database/databases/
PegaDATA/defaultSchema
• String Value: the schema name of your data schema
4. Optional: For dual-user configurations, repeat step 2 to add a binding identifier for the Admin user on
the data schema. Specify the following properties on the Step 2: Specify basic properties screen:
• Binding identifier: PegaDATADataSourceAdmin
• Name in the name space relative to lookup name prefix: prconfig/database/databases/
PegaDATA/dataSourceAdmin
• String Value: the JNDI name of the Admin data source for your data schema
5. Optional: For dual-user configurations, repeat step 2 to add a binding identifier for the Admin user on
the rules schema. Specify the following properties on the Step 2: Specify basic properties screen:
• Binding identifier: PegaRULESDataSourceAdmin
• Name in the name space relative to lookup name prefix: prconfig/database/databases/
PegaRULES/dataSourceAdmin
• String Value: the JNDI name of the Admin data source for your rules schema
6. Repeat step 2 to create the customer data schema binding identifier, but specify the following
properties on the Step 2: Specify basic properties screen:
1. Make sure that prweb.war or the EAR file for your application server is not running.
2. Use the IBM WebSphere Administrative Console to remove each of the current versions of the
applications.
a. Navigate to Applications > Application Types > WebSphere Enterprise Applications to see a list
of the installed applications. Select each of the applications and click Uninstall.
b. When you click Uninstall on a package, IBM WebSphere empties the ./installedApps/* directories.
To complete the uninstall, delete the following directories:
• ./config/temp/*
• ./wstemp/*
• ./temp
3. Delete everything in the temporary directory. This is the directory that you specified for the JNDI
location url/initialization/explicittempdir.
4. From the left frame of the IBM WebSphere Administrative Console, select Applications > New
Application.
5. Click New Enterprise Application.
6. Click Browse and select prweb.war from the archives directory.
7. Click Open, and then click Next.
8. Select Detailed - Show me all installation options and parameters.
This option allows you to review all the deployment options for the application, including the default
bindings and resource mappings.
9. Click + to expand Choose to generate default bindings and mappings.
10. Complete this page.
• Check Generate Default Bindings.
• Check Use default virtual host name for Web and SIP modules.
• Leave the other default settings unchanged, and click Next.
11. Scroll to the bottom on this page and click Continue to display a wizard where you can specify
deployment options.
This security file allows the Pega Platform to run when Java EE Security Checking is enabled.
This section of the deployment is a series of steps under the general heading of Install New
Application.
12. For Step One, accept the defaults and click Next.
13. Continue through the next steps, either accepting the defaults, or customizing for your organization, as
needed.
14. In the Map context roots for Web Modules step, enter prclusterservice as the context root, and
click Next.
15. Locate the step where you Map resource references to resources.
16. In the Map resource references to resources step, there are three rows that include "explicittempdir"
in the Resource Reference column. Use the find tool on your browser to find the correct rows for:
• EJB EngineCMT bean
• EngineBMT beans
• prweb.war module
17. For each of the three rows, change the value in the Target Resource JNDI Name field to the temp
directory, for example url/initialization/explicittempdir.
This maps the location you specified in the URL provider you created to the corresponding Resource
Reference in the application, so that the application will use the location for the PegaTempDir. Use the
Browse button and Apply to change each of the three values.
18. Click Next.
Depending on your configuration, you might see a set of warnings related to missing resource
references. These warnings are informational. Review the warnings, and then continue.
Note: These are resource references that are defined in web.xml, the deployment
configuration files for the application, but not mapped to resource definitions in your
application. In the page, Map resources to references, they are mapped to the Target
Resource JNDI Name url/pega/none, indicating that they are not used. Pegasystems provides
these references for Java EE compliance, but their use is optional. You can continue with the
deployment.
19. At the bottom of the Warnings page, click Continue.
20. Click Next as needed to continue through the remaining steps, accepting the defaults, or setting them
to the requirements of your organization.
21. On the Summary page, click Finish.
The system begins deploying the EAR file, which can take a few minutes. When the deployment
completes successfully, WebSphere displays a success message similar to the following: "Application
Pega Platform installed successfully."
1. Navigate to the PRServlet URL, replacing the server and port values with your specific values.
http://server:port/prweb
2. Use the following credentials to log in the first time:
• User ID — [email protected]
• Password — the password you set when you installed
After logging in, Pega Platform indexes the rules in the system to support full-text search. During
the index process, there might be a delay in the responsiveness of Pega Platform user interface. The
process usually takes from 10 to 15 minutes to complete depending on your system configuration.
If the index process ends without generating an error message, the deployment is successful.
3. Immediately after the index process completes, change the administrator password. The new
password must be at least 10 characters long.
If the system does not prompt you to change your password, follow these steps:
a. From the Operator Menu, select the Profile.
b. Click Change Password.
c. Verify the Current Password, and then enter and confirm the New Password.
d. Click Save.
1. Identify the directory you want to use for logging. If the directory does not yet exist, create the
directory. The Tomcat user must have write permissions for the new directory.
2. Back up the existing prlog4j2.xml file in the Pega-image\scripts\config directory.
3. Open the prlog4j2.xml file for editing.
4. Locate the appender for the PegaRules.log file that contains the ${sys:pega.tmpdir} string:
<RollingRandomAccessFile name="RollingRandomAccessFile"
fileName="${sys:pega.tmpdir}/PegaRULES.log"...
fileName="log-directory\PegaRULES.log"
Note: The directory path is relative to the <Tomcat-home>\work directory. In this example, the
log files will be created in <Tomcat-home>\work\log-directory.
6. Repeat steps 4 and 5 for the PegaRULES-ALERT.log and PegaRULES-ALERTSECURITY files.
7. Save and close the prlog4j2.xml file.
8. Restart the Pega Platform to make the changes.
9. Check the directory to confirm that the log files were created in the new location.
Configuring logging
To customize what is logged for installations, upgrades, and the prpcUtils tool, customize
the template prlog4j2.xml file. To customize the processes that use java logging, edit the
deploylogging.properties file.
Work with your system administrator to configure logging.
1. To configure the details of what is logged in the Apache log files, open scripts/config/
prlog4j2.xml and update the details of what is logged for installations, upgrades and prpcUtils
actions.
For more information, see Apache Log4j2.
2. To configure what is logged by the installation and upgrade processes that use Java logging, edit the
scripts/config/deploylogging.properties file.
3. Optional: Increase the size of the log files. The specific size will depend on your environment and the
size of your application.
The initial log file size is 250 MB.
prpcUtils.bat export
1. In the header of Dev Studio, click Configure > Application > Structure > Referencing Applications.
2. Display the application page by clicking Lock and Roll for each application.
3. Review the ruleset version prerequisites for the application ruleset by selecting + next to
Prerequisites. To modify a required rule form, click the name of the ruleset version to edit it.
4. Select the Lock checkbox and select Update my application to include the new ruleset versions.
5. Enter the password for this ruleset version and select the Roll checkbox.
6. In the Roll to Version field, enter a new ruleset version or accept the default version which increments
the current version by one.
7. In the NEW section of the Prerequisites verify the list of ruleset prerequisites.
In particular, verify that the lowest ruleset points to the appropriate version of Pega Platform
8. Apply the changes to your ruleset by clicking Run.
9. Repeat these steps for each application in your system.
Indexing starts when you start the application server. The first node that starts after the deployment
becomes the default initial search node. You can configure a different search node and can also configure
multiple search nodes.
The default index directory is PegaSearchIndex in your temporary directory. The contents of this directory
might be deleted. As a best practice, store your indexes in a more permanent location accessible to all
search nodes.
Follow these steps to build the indexes, configure search nodes, and update the index directory:
1. Check your directory sizes. Ensure that the directories for all Elasticsearch host nodes have sufficient
free space to hold the Elasticsearch indexes.
• Ensure that the host node directories have sufficient free space to hold the Elasticsearch indexes.
Elasticsearch indexes are approximately three times the size of the Lucene indexes.
• Ensure that the directory for the initial host node has sufficient space to initially hold both the
Lucene index and the Elasticsearch index.
2. Use the prpcUtils tool to reindex the rules:
a. On the node that you want to index, open the prpcUtils.properties file in the
Pega_HOME\scripts\utils directory.
b. Configure the connection properties.
# Connection Information
pega.jdbc.driver.jar=/path-to-the-database-JAR-file/DRIVER.jar
pega.jdbc.driver.class=database driver class
pega.database.type=database vendor type
pega.jdbc.url=URL of the database
pega.jdbc.username=Deployment username
pega.jdbc.password=password
c. Optional. Configure a directory to store the new indexes; by default, indexes are created in the
directory specified in the user.temp.dir property.
indexing.indexdirectory=full-path/index/
d. Configure the indexing type parameter in the SETTINGS FOR FULL TEXT INDEXER TOOL section;
leave all other indexing parameters commented out:
indexing.indextype=Rule
e. Save and close the prpcUtils.properties file.
f. Run the prpcUtils.bat or prpcUtils.sh script to reindex the rules. For example:
prpcUtils.bat indexing
3. Repeat step 2 to reindex the data files. Set the index type to Data:
indexing.indextype=Data
4. Repeat step 2 to reindex the work files. Set the index type to Work:
indexing.indextype=Work
5. Use Dev Studio to delete the existing index nodes:
a. In the header of Dev Studio, click Configure > System > Settings > Search.
b. Expand Search Index Host Node Setting.
c. Click the X to the right of each node to delete all existing nodes.
d. Click Submit.
6. Use Dev Studio to add the host nodes. The system replicates the indexes on the new nodes.
Note:
• Configure a minimum of two Elasticsearch host nodes. Pegasystems recommends that you
configure a minimum of three nodes for maximum fault tolerance. You might need more
than three nodes depending on the size of your cluster.
• You can specify that a node is either always an index host node or that it never becomes
an index host node even if it is the first node that is started after installation using the -
Dindex.directory JVM setting. To specify that a node is always an index host node specify
the directory name. To specify that a node is never an index host node, leave this setting
blank. For more information about configuring index host nodes, see Managing Elasticsearch
index host nodes outside of the Search landing page on the Pega Community.
a. In the header of Dev Studio, click Configure > System > Settings > Search.
b. Expand Search Index Host Node Setting.
c. Enter the information for the primary host node. The first node you enter is the node on which
Elasticsearch indexes will be built.
• Enter the Search index host node ID on which you built the indexes.
• In the Search index file directory, enter the directory in which prpcUtils saved the indexes.
d. Optional: Add any needed additional host nodes.
e. Verify the Search Index Host Node ID and the Search Index File Directory.
f. Expand Automated Search Alerts, and enable Automatically Monitor Files.
g. Click Submit to save the settings.
7. To enable communication between Elasticsearch host nodes in the cluster, open a TCP port in the
range 9300-9399 on each node. (By default, Elasticsearch uses port 9300.) These ports are used for
internal node-to-node communication only, and should not be externally accessible.
Do not stop or bring down the default node until the search indexes build completely. The Search Landing
Page displays the status. After the search indexes are completely built, you can change the default
settings.
• Rule-PegaQ-Questionnaire
For more information about the options that you can choose while running the Revalidate and Save
tool, see the Pega Platform help.
4. Find the surveys in your application that run on an embedded page instead of the context, or primary
page, of the parent flow.
a. In the Application Explorer, expand Survey > Survey to display a list of surveys in your application.
b. Click a survey name to open the Survey form.
c. Click Actions > View references to find the flow that calls your survey.
d. Click the Open icon next to the flow name.
e. On the flow diagram, inspect the configuration of the Subprocess shape that calls your survey.
f. If the Define flow field is set to On embedded page, note the value in the Page property field.
g. Repeat steps b through f for each survey in your application.
5. If you do not have any surveys that run on embedded pages, you can skip this step. Customize the
upgrade utility so that it finds and edits the correct pages for in-flight surveys.
a. Find the Work-.pyUpgradeSurveyProperties data transform by searching for it or by using the
Application Explorer.
b. Save a copy of the rule to an unlocked ruleset version in your application.
c. On the Definition tab of the Data Transform form, use the Update Page action to set the current
page to the embedded page that you noted from step 4.
d. Enclose the Update Page action with a When action if only some surveys run on the embedded
page.
e. Repeat steps c and d for each embedded page that you noted from step 4.
f. Click Save.
6. Run the upgrade utility for in-flight surveys.
a. In the header of Dev Studio, click Configure > System > Release > Upgrade > Upgrade Tools.
b. Click Update Survey Work Objects.
c. In the Upgrade survey work objects dialog box, select the check box next to each class that
defines a survey.
d. Click Run utility.
7. Correct references to deprecated APIs.
For more information about deprecated APIs and the APIs that supersede them, see the release notes
for Pega Platform 7.3.
4. In the Class field, enter the class name that you want to add to the access role name.
5. Under Access Control, enter 5 in all the fields to provide access to this access role name.
6. Click Save.
7. Perform steps 3 through 6 for each of the remaining classes.
1. In the header of Dev Studio, click Configure > Org & Security > Tools > Security > Role Names.
2. In the pop-up window that displays roles, click the role that you want to edit.
3. In the Dev Studio, click the @baseclass class in the Access Class column.
4. In the Privileges section, click the Plus icon and, in the Name column, select the pxViewSystemInfo
privilege.
5. In the Level column, enter 5 for the production level. Production level 5 provides the highest security.
6. Click Submit.
7. Repeat steps 1 through 6 for each role that requires modification.
Enabling operators
Pega Platform deployment security requires an administrator to enable new operators shipped with Pega
Platform and requires password changes after the first login.
The administrator and new operators shipped with Pega Platform must change their passwords when
they first log in:
• [email protected]
• [email protected]
• ExternalInviteUser
• IntSampleUser
• PRPC_SOAPOper
• [email protected]
• [email protected]
• External
1. In the header of Dev Studio, click Configure > Org & Security > Authentication > Operator Access.
2. In the Disabled operators list, click the link for the Pega-provided operator that you want to enable.
The following standard operators are installed but disabled by default. When these standard operators
first log on, they are required to change their passwords. Enable only those operators you plan to use:
• [email protected]
• [email protected]
• ExternalInviteUser
• IntSampleUser
• PRPC_SOAPOper
• [email protected]
• [email protected]
• External
3. On the Edit Operator ID page, on the Security tab, select Force password change on next login and
clear Disable Operator.
4. Select Update password.
5. Enter a password that conforms to your site standards and click Submit.
6. Click Save and close the operator page.
7. Repeat steps 2 through 6 for the remaining operators.
2. In the header of Dev Studio, click Configure > System > Release > Upgrade > Upgrade Tools.
3. Expand General Utilities.
4. Click each utility, and then click Run utility.
1. Verify that you have the correct privileges to view and edit the Optimize Schema landing page. Set
these parameters to true:
• ViewAndOptimizeSchema
• Dynamic System Setting (DSS) databases/AutoDBSchemaChanges
2. In the header of Dev Studio, click Configure > System > Database > Optimize Schema.
3. Select the PegaDATA database.
4. Click view the unused tables to display a list of Pega Platform tables without class mappings. Either
select the ones you want to delete and click Proceed with Changes to have Pega Platform drop the
tables, or drop them manually in your database.
5. Repeat steps 3 and 4 for the PegaRULES database.
1. In the header of Dev Studio, click Configure > System > Release > Upgrade > Update Existing
Applications.
2. If any actions are listed, click Run to start the utility.
3. Test the application. If the test results are acceptable, repeat these steps on your production system.
1. In the header of Dev Studio, click Configure > System > Release > Upgrade > Upgrade Applications
Schema.
2. If any actions are listed, click Run to start the utility.
3. Test the application. If the test results are acceptable, repeat these steps on your production system.
#Prebuild Conclusions:
java] May 1, 2015 1:00:21 PM
com.pega.pegarules.internal.bootstrap.PRBootstrapDataSource
[java] 19830421: Loading bootstrap properties from file:///e:\temp/
PegaInstallTemp-24-November-2014-11.07.15/prbootstrap.properties
[java] May 1, 2015 1:00:21 PM
com.pega.pegarules.internal.bootstrap.SettingReaderJNDI
java] 19830421: Could not find java:comp/env/prbootstrap/ in the local JNDI
context, skipping prconfig setting lookup
Look for any warning or error messages. One common issue is that a conclusion cannot be built because
a class is invalid, for example:
The warning or error message includes information about the invalid class. See the Pega Community for
information. If you cannot resolve the issue, see the Support section of the Pega Community.
• libfontconfig.so.1
• libstdc++.so.6
You can include screen captures in an application document that is generated by the Document
Application tool. Screen captures provide stakeholders with a realistic picture of an application's user
interface. Install a PhantomJS REST server to include screen captures in an application document.
What to do next: Continue at Configuring PhantomJS REST server security for including screen
captures in an application document.
• Pega 7.3
• Pega 7.3.1
• Pega 7.4
If you are upgrading from another version, skip this section.
If you added these privileges prior to the upgrade, skip this section.
1. Click the Operator menu in the Dev Studio header and select Operator.
2. In the Application Access section, expand an access group and click the role that you need to modify.
3. Click the @baseclass class in the Access Class column.
4. In the Privileges section, click the Plus icon and, in the Name column, add the following privileges for
the type of access required.
• pzSystemOperationsObserver – Required to access the Requester Management landing page
and to view performance and trace entry details.
• pzSystemOperationsAdministrator – Required to access the Requester Management landing
page and perform most actions on requestors. To trace requestors and view the clipboard you also
need to have the pzDebugRemoteRequestor privilege.
5. Enter 5 for the production level in the Level column.
Production level 5 provides the highest security.
6. Click Submit.
7. In the Access Class column, click the Pega-Landing class and repeat steps 4 through 6.
Note: If the Pega-Landing class is not in the table, add it by clicking the Plus icon at the end of
the table and entering Pega-Landing in the Class field.
8. Save the access role form.
environment, agents are mapped to the BackgroundProcessing node type by default; previously
configured DAQ customizations using NodeId are removed.
Note: This section applies only to major and minor upgrades. If you are upgrading from one
patch release to another, skip this section. For details about these differences, see: https://
community1.pega.com/community/pega-support/question/new-platform-patch-release-
announcement.
Review your agents and remap them to the appropriate node types and update the node type-based DAQ
with any customizations. For more information, see Mapping agents to node types.
1. Open the Records Explorer to search for the service email that you created to configure replies to
Pulse email notifications.
2. Expand the Integration-Services category and click Service Email.
3. Click the service email that you created for Pulse email replies.
4. In the Message header section on the Request tab of the service email, add the following fields:
Appendices
The appendices include information about optional processes and troubleshooting.
Property Description
pega.source.jdbc.driver.jar The path to the JDBC JAR file. For databases that
use multiple JDBC driver files, specify semicolon-
pega.target.jdbc.driver.jar
separated values.
Property Description
Custom properties
The following properties are used during migration to configure custom settings.
Property Description
Property Description
Operational properties
Use the following properties to migrate Rules objects. Set to true or false.
Property Description
Property Description
pega.bulkmover.unload.db Unload the data from the rules tables on the source
system into the pega.bulkmover.directory.
pega.bulkmover.load.db Load the data onto the target system from the
pega.bulkmover.directory.
Property Description
If your deployment does not meet all these criteria, follow the steps in this section to edit the
setupDatabase.properties file. The setupDatabase.properties file controls scripts which perform
the following tasks:
• Upgrade Pega Platform and enable Kerberos authentication. Use the upgrade.bat or upgrade.sh
script.
• Generate a DDL file of schema changes. Use the generateddl.bat or generateddl.sh script. You
can use the generateddl script regardless of whether you use the IUA or the command-line script.
• Generate user-defined functions. Use the generateudf.bat or generateudf.sh script.
1. Open the setupDatabase.properties file in the scripts directory of your distribution image:
Directories.distributionDirectory\scripts\setupDatabase.properties
2. Specify the properties for your system. For each property, add the appropriate value after the equal
sign. See Database connection properties and script arguments.
3. Optional: If you are repeating a failed upgrade, configure the resume property:
• To resume from the last successful step, set automatic.resume=true.
• To restart from the beginning, set automatic.resume=false.
4. Save and close the file.
Property Description
Property Description
2. Edit the migrateSystem.properties file to set the target schema names. The settings depend
on whether you have one database or two databases:
• One database:
• Two databases:
pega.move.admin.table=true
pega.clone.generate.xml=true
pega.clone.create.ddl=true
pega.clone.apply.ddl=false
pega.bulkmover.unload.db=false
pega.bulkmover.load.db=false
pega.rules.objects.generate=false
pega.rules.objects.apply=false
pega.move.admin.table=true
pega.clone.generate.xml=false
pega.clone.create.ddl=false
pega.clone.apply.ddl=false
pega.bulkmover.unload.db=true
pega.bulkmover.load.db=true
pega.rules.objects.generate=false
pega.rules.objects.apply=false
• Two databases:
2. Optional: If your customer data schema is different than your Pega data schema, insert the
following entry to specify the customer data schema name. Replace customer-data-schema with
your customer data schema name.
pega.customerdata.schema=customer-data-schema
3. Run the generateddl.bat or generateddl.sh script.
b. Have the database administrator apply the DDL.
c. Use the command line to upgrade the rules schema.
1. Edit the setupDatabase.properties file to bypass the schema upgrade because the DDL is
already applied: bypass.pega.schema=true
2. Leave the rules and data schema names as in step 2a.
3. Run the upgrade.bat or upgrade.sh script.
3. Migrate the changes to the new rules schema; create rules schema objects, and create links between
the new rules schema and the data schema.
a. Clone the DDL.
1. Edit the migrateSystem.properties file to set the source and target schema properties:
pega.move.admin.table=false
pega.clone.generate.xml=false
pega.clone.create.ddl=true
pega.clone.apply.ddl=false
pega.bulkmover.unload.db=false
pega.bulkmover.load.db=false
pega.rules.objects.generate=false
pega.rules.objects.apply=false
pega.move.admin.table=false
pega.clone.generate.xml=false
pega.clone.create.ddl=false
pega.clone.apply.ddl=false
pega.bulkmover.unload.db=true
pega.bulkmover.load.db=true
pega.rules.objects.generate=true
pega.rules.objects.apply=false
2. Optional: If your customer data schema is different than your Pega data schema, insert the
following entry to specify the customer data schema name. Replace customer-data-schema with
your customer data schema name.
pega.customerdata.schema=customer-data-schema
3. Run the generateddl.bat or generateddl.sh script with the --upgradeDataOnly argument
and true parameter, for example: generateddl.bat --upgradeDataOnly true
b. Have the database administrator apply the DDL to the data schema.
c. Use the command line to upgrade the data schema. Follow the instructions in Upgrading the data
schema.
1. Edit the setupDatabase.properties file to bypass the schema upgrade because the DDL is
already applied: bypass.pega.schema=true
2. Run the upgrade.bat or upgrade.sh script with the --dataOnly argument and true parameter,
for example: upgrade.bat --dataOnly true
# Connection Information
pega.jdbc.driver.jar=\path-to-the-database-JAR-file\DRIVER.jar
pega.jdbc.driver.class=database driver class
pega.database.type=database vendor type
pega.jdbc.url=URL of the database
pega.jdbc.username=Deployment username
pega.jdbc.password=password
rules.schema.name=rules-schema-name
data.schema.name=data-schema-name
customerdata.schema.name=optional-customer-data-schema
If you do not specify an output directory, the script writes the output to the default directory: Pega-
image\schema\generated\
Note: The output directory is deleted and re-created each time the generateddl script runs. To
save a copy of the DDL, rename the directory before you run the script.
1. Review the DDL file in the output directory and make any necessary changes. The default directory is:
Pega-image\schema\generated\database\oracledate>
2. Apply the DDL file.
a. Register the DDL file with the database. Register the .jar file with the database.
b. Apply the CREATE FUNCTION DDL.
The output directory is deleted and re-created each time the generateddl script runs. To save a copy of the
DDL, rename the directory before you rerun the script.
1. Open the setupDatabase.properties file in the scripts directory of your distribution image:
Directories.distributionDirectory\scripts\setupDatabase.properties
2. Set the property bypass.pega.schema=true.
3. Save and close the file.
# Connection Informationpega.jdbc.driver.jar=\path-to-the-database-JAR-file\DRIVER.jar
pega.jdbc.driver.class=database driver class
pega.database.type=database vendor type
pega.jdbc.url=URL of the database
3. Optional: If you have a split-schema, on the data schema run the following commands:
4. From the Pega-image \scripts directory, run the generateudf.bat or generateudf.sh script with
the --action install argument.
generateudf.bat --action install --dbType oracledate
Platform must be disabled in the load balancer so that new users are redirected to another
active Pega Platform node.
b. Quiesce the Pega Platform node, by using the Autonomic Event Services (AES) or high availability
landing pages. For more information, see the help for Cluster management and quiescing.
c. Ensure that all requestors are passivated and the system run state is set to "Quiesce Complete", by
using the HA Cluster Management landing page.
d. Shut down the node.
e. Upgrade the data source to connect to the upgraded schema (to reflect changes made in step 1).
For more information, see Upgrading the data schema.
f. To switch back to embedded mode from client-server mode, modify the prconfig.xml file and
remove the following settings that were added during the switch to client-server mode.
Limitations
You can reverse upgrades in many situations, but there are limitations.
Reversing an upgrade is not supported for:
• In-place upgrades
• Single-schema systems
• Multitenancy systems
• Multi-hop upgrades: For example,
◦ You can:
1. Upgrade from Pega 7.2 to 8.2.
2. Reverse the upgrade to return Pega 7.2.
◦ You cannot:
1. Upgrade from Pega 7.2 to 7.4 (first hop).
2. Upgrade again from Pega 7.4 to 8.2 (second hop).
3. Reverse the upgrade back to Pega 7.2.
Reversing an upgrade
Use a script to reverse an upgrade.
1. Check the scripts/log directory for the presence of multiple Reverse_ timestamp.xml files. Note the
file name with the latest time stamp.
2. If you have not done so already, edit the setupDatabase.properties file to configure the reversal.
a. Open the setupDatabase.properties file in the scripts directory of your distribution image:
Directories.distributionDirectory\scripts\setupDatabase.properties
b. Configure the connection properties.
# Connection Information
pega.jdbc.driver.jar=/path-to-the-database-JAR-file/DRIVER.jar
pega.jdbc.driver.class=database driver class
pega.database.type=database vendor type
pega.jdbc.url=URL of the database
pega.jdbc.username=Deployment user name
pega.jdbc.password=password
rules.schema.name=new-rules-schema-name
data.schema.name=data-schema-name
c. If there are multiple versions of the Reverse_timestamp.xml file, specify the file name from step 1
in the reversal.schema.file.name property, for example:
reversal.schema.file.name=Reverse_2016-06-18-23:59:59.xml
d. Save and close the file.
3. In the scripts directory of the upgrade distribution image, run the generateDDL.bat or
generateDDL.sh script to generate the reverse create and drop statements.
4. In the scripts directory of the upgrade distribution image, run the reverse.bat or reverse.sh
script. If there are any errors, review the information in the scripts\logs\CLI-Reverse-
Log-timestamp.log file.
5. Reconfigure the application server:
a. Restart the application server.
b. Verify that the prweb application is configured to use the correct rules and data schema names.
c. Deploy the prweb application.
6. To verify that the reversal was successful, check the version of Pega Platform on the log-in screen.
1. Review the failure message for information about the source of the error. Use the information in the
error message to correct the error before you continue.
2. Optional. If you used the IUA, the select either Resume or Start Over when the system displays the
Resume Options screen.
3. Optional. If you used the command-line script, set the automatic.resume property in the
setupDatabase.properties file:
• To resume the deployment from the last successful step, set automatic.resume=true.
• To start over, set automatic.resume=false.
4. Repeat the deployment. Use the same procedure that you used for the initial deployment.
1. Take down any application servers that use the failed schema.
2. Backup your database.
3. In ResourceKit\AdditionalUpgradeScripts\MigrationRecoveryScripts
\database_cleanDups.sql, replace all instances of @RULES_SCHEMA with the name of the schema
that contains the pr4_base table.
4. Use your vendor tools to run the database_cleanDups.sql script on the database.
5. In database_fix_vw_table.sql, replace all instances of @RULES_SCHEMA with the name of the
schema that contains the pr4_base table.
6. Use your vendor tools to run the database_fix_vw_table.sql script on the database.
7. Use the generateddl.bat or generateddl.sh script to generate and apply the DDL. See Optional:
Generating and applying DDL.
8. Use your vendor tools to rebuild the indexes for the tables in your rules schema.