Upgrading from an Earlier WarehousePG 6 Release v6.27.4

The upgrade path supported for this release is WarehousePG 6.x to a newer WarehousePG 6.x release.

Important Set the WarehousePG timezone to a value that is compatible with your host systems. Setting the WarehousePG timezone prevents WarehousePG from selecting a timezone each time the cluster is restarted and sets the timezone for the WarehousePG coordinator and segment instances. After you upgrade to this release and if you have not set a WarehousePG timezone value, verify that the selected WarehousePG timezone is acceptable for your deployment. See Configuring Timezone and Localization Settings for more information.

Prerequisites

Before starting the upgrade process, perform the following checks.

  • Verify the health of the WarehousePG host hardware, and verify that the hosts meet the requirements for running WarehousePG. The WarehousePG gpcheckperf utility can assist you in confirming the host requirements.

    Note If you need to run the gpcheckcat utility, run it a few weeks before the upgrade during a maintenance period. If necessary, you can resolve any issues found by the utility before the scheduled upgrade.

    The utility is in $GPHOME/bin. Place WarehousePG in restricted mode when you run the gpcheckcat utility. See the WarehousePG Utility Guide for information about the gpcheckcat utility.

    If gpcheckcat reports catalog inconsistencies, you can run gpcheckcat with the -g option to generate SQL scripts to fix the inconsistencies.

    After you run the SQL scripts, run gpcheckcat again. You might need to repeat the process of running gpcheckcat and creating SQL scripts to ensure that there are no inconsistencies. Run the SQL scripts generated by gpcheckcat on a quiescent system. The utility might report false alerts if there is activity on the system.

  • If you have configured the WarehousePG Platform Extension Framework (PXF) in your previous WarehousePG installation, you must stop the PXF service, and you might need to back up PXF configuration files before upgrading to a new version of WarehousePG. Refer to PXF Pre-Upgrade Actions for instructions.

    If you have not yet configured PXF, no action is necessary.

Upgrading from 6.x to a Newer 6.x Release

An upgrade from WarehousePG 6.x to a newer 6.x release involves stopping WarehousePG, updating the WarehousePG software binaries, and restarting WarehousePG. If you are using WarehousePG extension packages there are additional requirements. See Prerequisites in the previous section.

Note

Starting from WarehousePG 6.27.4, the default installation directory is /usr/edb/whpg6. For backward compatibility, symlinks are provided at /usr/local/greenplum-db and /usr/local/greenplum-db-clients.

  1. Log in to your WarehousePG coordinator host as the WarehousePG administrative user:

    $ su - gpadmin
  2. Perform a smart shutdown of your WarehousePG 6.x system (there can be no active connections to the database). This example uses the -a option to deactivate confirmation prompts:

    $ gpstop -a
  3. Copy the new WarehousePG software installation package to the gpadmin user's home directory on each coordinator, standby, and segment host.

  4. If you used yum or apt to install WarehousePG to the default location, run these commands on each host to upgrade to the new software release.

    For RHEL/CentOS systems:

    $ sudo yum upgrade ./greenplum-db-<version>-<platform>.rpm

    For Ubuntu systems:

    # apt install ./greenplum-db-<version>-<platform>.deb

    The yum or apt command installs the new WarehousePG software files into a version-specific directory under /usr/edb/whpg6 and updates the symbolic link /usr/local/greenplum-db to point to the new installation directory.

  5. If you used rpm to install WarehousePG to a non-default location on RHEL/CentOS systems, run rpm on each host to upgrade to the new software release and specify the same custom installation directory with the --prefix option. For example:

    $ sudo rpm -U ./greenplum-db-<version>-<platform>.rpm --prefix=<directory>

    The rpm command installs the new WarehousePG software files into a version-specific directory under the <directory> you specify, and updates the symbolic link <directory>/greenplum-db to point to the new installation directory.

  6. Update the permissions for the new installation. For example, run this command as root to change the user and group of the installed files to gpadmin.

    $ sudo chown -R gpadmin:gpadmin /usr/edb/whpg*
  7. If needed, update the greenplum_path.sh file on the coordinator and standby coordinator hosts for use with your specific installation. These are some examples.

    • If WarehousePG uses LDAP authentication, edit the greenplum_path.sh file to add the line:

      export LDAPCONF=/etc/openldap/ldap.conf
    • If WarehousePG uses PL/Java, you might need to set or update the environment variables JAVA_HOME and LD_LIBRARY_PATH in greenplum_path.sh.

      Note When comparing the previous and new greenplum_path.sh files, be aware that installing some WarehousePG extensions also updates the greenplum_path.sh file. The greenplum_path.sh from the previous release might contain updates that were the result of installing those extensions.

  8. Edit the environment of the WarehousePG superuser (gpadmin) and make sure you are sourcing the greenplum_path.sh file for the new installation. For example change the following line in the .bashrc or your chosen profile file:

    source /usr/local/greenplum-db-<current_version>/greenplum_path.sh

    to:

    source /usr/edb/whpg6/greenplum_path.sh

    Or if you are sourcing a symbolic link (/usr/local/greenplum-db) in your profile files, update the link to point to the newly installed version. For example:

    $ sudo rm /usr/local/greenplum-db
    $ sudo ln -s /usr/edb/whpg6 /usr/local/greenplum-db
  9. Source the environment file you just edited. For example:

    $ source ~/.bashrc
  10. After all segment hosts have been upgraded, log in as the gpadmin user and restart your WarehousePG cluster:

    # su - gpadmin
    $ gpstart
  11. Re-install WarehousePG extensions. If you were previously using any WarehousePG extensions such as pgcrypto, PL/R, PL/Java, or PostGIS, download the corresponding packages and install using this utility. See the extension documentation for details.

    Also copy any files that are used by the extensions (such as JAR files, shared object files, and libraries) from the previous version installation directory to the new version installation directory on the coordinator and segment host systems.

  12. If you configured PXF in your previous WarehousePG installation, you may need to install PXF in your new WarehousePG installation, and you may be required to re-initialize or register the PXF service after you upgrade WarehousePG. Refer to the Step 2 PXF upgrade procedure for instructions.

After upgrading WarehousePG, ensure that all features work as expected. For example, test that backup and restore perform as expected, and WarehousePG features such as user-defined functions, and extensions such as MADlib and PostGIS perform as expected.