OpenEdge 13.1 does not include the older ICU (International Components for Unicode) libraries and collation definition files provided in earlier OpenEdge releases. Databases that use an ICU collation from an earlier OpenEdge release must be migrated before they can be used with OpenEdge 13.1.

Select and test a target ICU collation

An ICU collation name consists of an ICU-version prefix, such as ICU- or ICU_48-, followed by a locale. The locale contains a two- or three-letter language code and can include a variant. For example, fi identifies Finnish.

When selecting a target collation, use the collation with the same locale in the new ICU version. Locale names from earlier ICU versions are available in the new version. For example, a database that uses ICU-fi can use ICU_78-fi for Finnish collation behavior.

Collation order can change between ICU versions when locale rules are corrected or updated. For example, the handling of ae and ä differs between ICU-de__PHONEBOOK and ICU_78-de@phonebook. Before migrating a production database, test applications with the target ICU collation to verify sorting, comparison, searching, and index behavior.

Choose a migration path

Choose either an in-place migration or a new-database migration. An in-place migration uses the PROUTIL COLLATIONUPGRADE qualifier to change the database to a supported ICU collation, followed by a full index rebuild. A new-database migration uses Pro2 or an ASCII dump and load to populate a database created with a supported ICU collation.

Prepare for an in-place migration

Before performing an in-place migration, disable after-imaging. When upgrading from OpenEdge 12.x, the required conv1213 database conversion disables after-imaging. When upgrading from OpenEdge 13.0, verify that after-imaging is disabled before running the collation migration. After the required full index rebuild completes, re-enable after-imaging as needed.

Verify the migration

After migration, verify that the database starts and that applications can connect. A client or database server can fail to start or connect if its configured ICU collation requires an unavailable ICU library.

For migration procedures, see Migrate an OpenEdge database when an ICU collation is unavailable in Internationalize ABL Applications.