Version 1.4.0

Release Date: June 24th, 2022

Supported Platforms

gpupgrade supports the following Greenplum Database 5.x and 6.x versions:

Greenplum Database 5 Greenplum Database 6
minimum version 5.29.6 minimum version 6.21.0

Download the required versions of Tanzu Greenplum from VMware Tanzu Network.

gpupgrade does not support upgrading Greenplum Database 4.3.x systems.

New or Changed Features

  • This release changes the minimum supported 5X Greenplum cluster to 5.29.6, and the minimum supported 6X Greenplum cluster to 6.21.0.
  • gpupgrade now automatically upgrades PL/R (3.0.4+), and PL/Container (1.6.0+ and 2.1.5+) extensions. Update to the latest supported version of the extension on the source cluster before starting a Greenplum cluster upgrade. See Running Initialize with Extensions for further details on upgrading Greenplum 5X clusters with pre-existing extensions.
  • The gpupgrade initialize command now completes all pre-upgrade checks, even if it encounters issues or errors. The command logs these issues and errors, and users are encouraged to resolve them prior to continuing. Users are now expected to run gpupgrade initialize during the pre-upgrade phase to generate these logs. Review the updated workflow of pre-upgrade in gpupgrade Process, gpupgrade Pre-upgrade Phase, and Initialize Phase.
  • This release adds a new check at the start of gpupgrade execute and gpupgrade finalize. If the check finds any open connections to the source or target cluster, it displays an error and suggests next actions.
  • Release 1.4.0 adds a new gpupgrade initialize check labeled Checking environment.... The check verifies if the source and target cluster environment variables may cause the clusters to be mixed up (for example it checks if $GPHOME_SOURCE or $GPHOME_TARGET are in $PATH or $LD_LIBRARY_PATH). If the check fails, the output includes recommended user actions to resolve the issue.

Resolved Issues

  • The pre-initialize step was failing when attempting to execute the heterogeneous partitions fix script. This issue has been fixed, and the data migration script now retains the partition owner, constraints, and defaults.

Known Issues

  • For Greenplum Database 6.20.0 and higher, during initialize, the gpinitsystem could fail when calling gpstart, with an error similar to: [CRITICAL]:-gpstart failed. (Reason='') exiting..... This occurred when the source and target Greenplum environment variables were mixed up, causing utilities to fail. Workaround: On all segments, remove any lines that source greenplum_path.sh, or set Greenplum variables in the .bashrc or .bash_profile files. Then invoke a new shell on master. For details, see the troubleshooting section of the initialize topic.

  • The Oracle Compatibility Functions cannot be upgraded because the library orafunc.so has changed between Greenplum version 5 and 6. You must drop the orafce extension before upgrading, and then reinstall it afterwards.

  • User files in the source cluster data directories are not preserved during the upgrade process; you must manually copy them to the target cluster once upgrading is complete. See the Post-upgrade topic for details.

  • Data migration scripts cannot migrate a table that is partitioned on a column of type name or tsquery. The workaround is to recreate the table with a supported data type or use gpbackup and gprestore. Data migration scripts do support partition tables with columns of type name or tsquery (including indexes) provided that they are not partitioned by those types.

Version 1.3.0

Release Date: March 2, 2022

Supported Platforms

gpupgrade supports the following Greenplum Database 5.x and 6.x versions:

Greenplum Database 5 Greenplum Database 6
minimum version 5.29.1 minimum version 6.19.3

Download the required versions of Tanzu Greenplum from VMware Tanzu Network.

gpupgrade does not support upgrading Greenplum Database 4.3.x systems.

New or Changed Features

  • gpupgrade now supports upgrading cluster with Postgres native extensions (such as dblink, hstore, and pgcrypto) and with Tanzu Greenplum extensions including GPText (3.9.0+), MADlib (1.19.0+), PostGIS (2.1.5+pivotal.3), PL/R (3.0.4+), PL/Container (1.6.0+ and 2.1.5+), and PXF (5.16.4+ and 6.3.0+). We recommend that you update to the latest supported version of the extension on the source cluster before upgrading. See the initialize topic for further details on upgrading with extensions.

  • gpupgrade includes a new configuration parameter, dynamic_library_path, which specifies the install location of extensions that are installed outside of target_gphome. See the gpupgrade_config file reference page for details.

  • Data migration scripts can now handle heterogenous partitioned tables when child partitions have invalid dropped column references, except when child partitions are misaligned from the root in their name, type or length. For details, see the hteterogenous partitioned tables section in the “pg_upgrade Consistency Checks” topic.

Known Issues

  • For Greenplum Database 6.20.0 and higher, during initialize, the gpinitsystem could fail with an error similar to gpstart: [CRITICAL]:-gpstart failed. (Reason='') exiting..... This occurred when the source and target Greenplum environment variables were mixed up, causing utilities to fail. Workaround: Remove any lines that source greenplum_path.sh, or set Greenplum variables in the .bashrc or .bash_profile files. Then invoke a new shell on all segments. For details, see the troubleshooting section of the initialize topic.

  • The Oracle Compatibility Functions cannot be upgraded because the library orafunc.so has changed between Greenplum version 5 and 6. You must drop the orafce extension before upgrading, and then reinstall it afterwards.

  • User files in the source cluster data directories are not preserved during the upgrade process; you must manually copy them to the target cluster once upgrading is complete. See the Post-upgrade topic for details.

  • Data migration scripts cannot migrate a table that is partitioned on a column of type name or tsquery. The workaround is to recreate the table with a supported data type or use gpbackup and gprestore. Data migration scripts do support partition tables with columns of type name or tsquery (including indexes) provided that they are not partitioned by those types.

Version 1.2.0

Release Date: Dec 17, 2021

Supported Platforms

gpupgrade supports the following Greenplum Database 5.x and 6.x versions:

Greenplum Database 5 Greenplum Database 6
minimum version 5.29.1 minimum version 6.18.0

Download the required versions of Tanzu Greenplum from VMware Tanzu Network.

gpupgrade does not support upgrading Greenplum Database 4.3.x systems.

New or Changed Features

  • Link mode has been enhanced to upgrade mirrors in-place using rsync. This requires rsync 3.0 or greater.

  • The pg_upgrade logs have been relocated to $HOME/gpAdminLogs/gpupgrade/pg_upgrade.

  • Reverting after initialize is now supported when there are no mirrors and standby.

  • Data migration scripts can now handle constraints on partition tables and indexes.

  • The post-finalize and post-revert data migration scripts now support recreating primary, unique, and foreign key constraints.

  • After finalize completes the target cluster is now stopped. The finalize output has been updated with new instructions.

  • The rpm prefix has changed from / to /usr/local/bin. Using rpm --prefix=/opt installs to /opt/gpupgrade.

  • The gpupgrade RPM prefix has changed from / to /usr/local/bin to enable a cleaner and more consistent directory structure when installing in a custom location.

Known Issues

  • During the gpupgrade initialize process, pg_upgrade --check detects large objects but does not output them.

Version 1.1.0

Release Date: July 13, 2021

Supported Platforms

gpupgrade supports the following required minimum Greenplum Database 5.x and 6.x versions:

Greenplum Database 5 Greenplum Database 6
minimum version 5.29.1 minimum version 6.18.0

Download the required versions of Tanzu Greenplum from VMware Tanzu Network.

gpupgrade does not support upgrading Greenplum Database 4.3.x systems.

New Features or Changes

  • Customers can now skip the disk space check performed during the gpupgrade initialize phase. To skip the check, set the disk_free_ratio: 0.0 in the gpupgrade configuration file. For details on editing the configuration file, see Edit the gpupgrade configuration file.
  • This release adds four new checks during gpupgrade initialize, to highlight deprecated objects from GPDB 5 to 6. The checks are:

    Checking for non-dumpable views with anyarray casts 
    Checking for non-dumpable views with unknown casts 
    Checking for views referencing deprecated tables 
    Checking for views referencing deprecated columns 
    

    Customers using these objects in functions, views or queries, need to remove them and rerun gpupgrade initialiaze.

Resolved Issues

  • [31288] - This release fixes the output in the confirmation prompt during gpupgrade execute and gpupgrade finalize, which referred to initialize: Continue with gpupgrade initialize? Yy|Nn.
  • [31399] - During disk space check, gpupgrade initialize would try to check filesystems that were not part of the Greenplum cluster, and generate an error if the gpupgrade user lacked permissions. This issue has been resolved. The disk space check now includes tablespace check also.
  • [31401] - The pre-initialize migration script gen_drop_partition_indexes.sql did not fully qualify the indexes with the schema. This issue has been fixed.
  • [31429] - After running gpupgrade finalize, the output referenced the “complete” data migration script name, that had been renamed to “post-finalize”. The output prompt has now been corrected.
  • [31426] - a. During the schema restore, if the partition name of a partitioned table included a non-reserved keyword (such as “current”), the upgrade would fail. For example:

    CREATE TABLE rank (id int, rank int, year int, gender char(1), count int)
    DISTRIBUTED BY (id)
    PARTITION BY RANGE (year)
    ( START (2006) END (2016) EVERY (1), 
      DEFAULT PARTITION "current" ); 
    

    The error would be similar to:

    ERROR:  syntax error at or near "current"
    LINE 6:   DEFAULT PARTITION current );
    

    This issue has been resolved.

    b. gpupgrade now can upgrade objects named with a Greenplum 5 non-reserved keyword which became reserved in 6 (such as “window”).

    For a list of reserved and non-reserved words refer to the Appendix C. SQL Key Words in the Postgres documentation.

  • [31431] - During the upgrade from Greenplum 5 to 6, the Greenplum 5 resource groups, and resource queues were not migrated. This issue has been resolved.

  • [176469655] - Upgrade now supports the motd banner configured in customer environments.
  • [171961664] - Improved the error message generated when user provided the same port range for source and target cluster. The error now displays:

    "SAVING_SOURCE_CLUSTER_CONFIG": temp_port_range contains port 5000 which overlaps with the source cluster ports on host-1. Specify a non-overlapping temp_port_range.
    

Version 1.0.0

Release Date: December 15, 2020

This is the first release of the gpupgrade utility for VMware Tanzu Greenplum Database. The gpupgrade utility upgrades a Greenplum Database system from a major 5.x Greenplum Database version to a Greenplum Database major 6.x version.

gpupgrade does not support upgrading Greenplum Database 4.3.x systems.

Supported Platforms

gpupgrade supports the following Greenplum Database 5.x and 6.x major versions:

Greenplum Database 5.x Greenplum Database 6.x
minimum version 5.28 minimum version 6.9

For a complete list of the pre-upgrade prerequisites and source cluster preparation steps, see gpupgrade Pre-upgrade Phase.

Download the required versions of Tanzu Greenplum from VMware Tanzu Network.

gpupgrade does not support upgrading Greenplum Database 4.3.x systems.

check-circle-line exclamation-circle-line close-line
Scroll to top icon