Skip to main content


         This documentation site is for previous versions. Visit our new documentation site for current releases.      
 

This content has been archived and is no longer being updated.

Links may not function; however, this content may be relevant to outdated versions of the product.

Troubleshooting: Cross-platform portability considerations

Updated on September 13, 2021

If your application is 100% guardrail compliant, you can successfully port your application from one database platform to another without any additional action. You can skip the rest of the information in this article.

However, if you made changes to your application or database outside of Designer Studio, or if you use REST, HTTP, or SOAP integration, you might need to reconfigure some aspects of your application before you port to a new database. For example, if you used the database vendor tools to create or modify the database, some constructs that are specific to a particular database platform (for example, Oracle) might not automatically translate into a similar construct on another platform (for example, Microsoft SQL Server). If your application includes a database-specific construct or does not meet the recommendations in this article, you might not be able to automatically deploy your application to other database platforms.

Supported property-to-database type mappings

Use the information in the following table to determine the portable format for common database types.

Pega 7 Platform
property type
IBM DB2 for Linux,
UNIX, and Windows
and
IBM DB2 for z/OS
Microsoft SQL ServerOraclePostgreSQL
DateVARCHAR(8)
bytes
VARCHAR(8)
characters
VARCHAR2(8)
characters
VARCHAR(8)
characters
DateTimeTIMESTAMPDATETIMETIMESTAMPTIMESTAMP
DecimalDECIMALDECIMALDECIMALDECIMAL
DoubleDECIMALDECIMALDECIMALDECIMAL
IdentifierVARCHAR(n)
bytes
VARCHAR(n)
characters
VARCHAR2(n)
characters
VARCHAR(n)
characters
IntegerDECIMALDECIMALDECIMALDECIMAL
PasswordVARCHAR(70)
bytes
VARCHAR(70)
characters
VARCHAR2(70)
characters
VARCHAR(70)
characters
TextVARCHAR
bytes
VARCHAR
characters
VARCHAR2
characters
VARCHAR
characters
TextEncryptedVARCHAR
bytes
VARCHAR
characters
VARCHAR2
characters
VARCHAR
characters
TimeOfDayVARCHAR(6)
bytes
VARCHAR(6)
characters
VARCHAR2(6)
characters
VARCHAR(6)
characters
TrueFalseVARCHAR(5)
bytes
VARCHAR(5)
characters
VARCHAR2(5)
characters
VARCHAR(5)
characters

Variable-length types

When using variable-length types, follow the recommendations in the following table. These value ranges are for all supported databases and ensure that you can port the data to other databases.

DecimalIntegerVARCHAR/VARCHAR2 or
NVARCHAR/NVARCHAR2

precision: 0-31

scale: 0-precision

precision: 0-31

scale: ==0

up to 4000 bytes (UTF-8 or UTF-16)

or

up to 4000 characters (ASCII)

  • Decimals: Decimal columns created or modified to have precision or scale outside the listed range are not portable by using the Pega 7 Platform tools. For example, Microsoft SQL Server supports a precision of up to 38 (38 total digits), but IBM DB2 for Linux, UNIX, and Windows supports only 31. Attempting to migrate data from this Microsoft SQL Server column to IBM DB2 for Linux, UNIX, and Windows would result in the loss of data and might fail.
  • Integers: As a best practice, use the decimal type with a scale of 0 in place of integer types.
  • VARCHAR: IBM DB2 databases interpret VARCHAR(n) as n bytes; other databases interpret it as n characters. Some platforms allow you to specify the type of interpretation. For example, on Oracle databases you can specify VARCHAR(n byte) or VARCHAR(n char). This distinction is particularly important when dealing with Unicode data. Although ASCII uses one byte per character, UTF-8 uses up to 3 bytes per character, and UTF-16 uses 2 bytes per character.

Views

ANSI SQL views are fully supported. Materialized views are database-specific and therefore not portable.

Index limitations

The maximum index size across all vendors is 900 bytes, which means that the sum of the maximum lengths of all columns in the index must be 900 bytes or less.

Functional indexes are not portable.

Integration resource limitations

REST, HTTP, and SOAP are currently supported on Pega Cloud, but might require additional configuration if you port your application to a new database. For more information about integrating with Pega Cloud, see Integration in your Pega Cloud environment.

Any integration functionality not listed in this article or in Integration in your Pega Cloud environment might cause portability problems.

Have a question? Get answers now.

Visit the Support Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega.com is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us