Skip to main content

Platform Rollback

In the event that an upgrade or hotfix to your instance of the Designer Cloud Powered by Trifacta platform has run into issues that cannot be repaired in the upgraded instance, you can follow the steps in this section to rollback to your previous version.

Note

Before you perform a rollback, you should review the set of issues with Alteryx first. For more information, please contact Alteryx Support.

Prerequisites

In order to complete the rollback in a timely manner, please verify that you have access to the following:

Access

You must:

  • Acquire root user access to the Trifacta node.

  • Acquire database access to uninstall and reinstall the Alteryx databases.

Tip

You should communicate to any affected users the required maintenance and expected outage window.

Backups

Warning

If you do not have the following, you cannot perform a rollback. These items cannot be acquired from Alteryx.

  • Backups of your pre-upgrade Alteryx configuration files

  • Backups of your pre-upgrade Alteryx databases

The following can be acquired from Alteryx if you do not have them:

  • RPM installers for the previous version. If any Hotfixes have been applied to the previous version, you should acquire and use the latest Hotfix RPM for your re-install.

  • PDF documentation for the previous version.

Rollback Overview

To recover the Designer Cloud Powered by Trifacta platform based on backups, please complete the following sections.

Note

When the databases are restored, internal identifiers such as job IDs, are reset in an order that may not correspond to the expected order. Consequently, references to specific identifiers may be corrupted. After restoring the databases, you should clear the job logs.

Note

If any of the hosts, pathnames, or credentials have changed since the backups were performed, these updates must be applied through trifacta-conf.json or through the Admin Settings page after the restoration is complete.

Stop services

You must stop the Designer Cloud Powered by Trifacta platform.

Steps:

  1. Login to the Trifacta node as root user.

  2. Stop the Alteryx service:

    service trifacta stop

Create new versions of databases - PostgreSQL

Before you restore, you must drop each database and create new versions of the databases that you wish to restore.

Note

The following assumes that the roles for each database are already created.

Login as a user that can run admin commands for PostgreSQL. This user may vary between deployments.

Alteryx database:

psql -c "DROP DATABASE trifacta;"
psql -c "CREATE DATABASE trifacta WITH OWNER trifacta;"

Jobs database:

Note

Please note the escaped quotes in the CREATE DATABASE command for this database.

psql -c "DROP DATABASE \"trifacta-activiti\";"
psql -c "CREATE DATABASE \"trifacta-activiti\" WITH OWNER trifactaactivit;"

Scheduling database:

psql -c "DROP DATABASE trifactaschedulingservice;"
psql -c "CREATE DATABASE trifactaschedulingservice WITH OWNER trifactascheduling;"

Time-based Trigger Service database:

psql -c "DROP DATABASE trifactatimebasedtriggerservice;"
psql -c "CREATE DATABASE trifactatimebasedtriggerservice WITH OWNER trifactatimebasedtriggerservice;"

Configuration Service database:

(Release 6.0 and later)

psql -c "DROP DATABASE trifactaconfigurationservice;"
psql -c "CREATE DATABASE trifactaconfigurationservice WITH OWNER trifactaconfigurationservice;"

Artifact Storage Service database:

(Release 6.0 and later)

psql -c "DROP DATABASE trifactaartifactstorageservice;"
psql -c "CREATE DATABASE trifactaartifactstorageservice WITH OWNER trifactaartifactstorageservice;"

Job Metadata Service database:

(Release 6.4 and later)

psql -c "DROP DATABASE trifactajobmetadataservice;"
psql -c "CREATE DATABASE trifactajobmetadataservice WITH OWNER trifactajobmetadataservice;"

Authorization Service database:

(Release 7.1 and later)

psql -c "DROP DATABASE trifactaauthorizationservice;"
psql -c "CREATE DATABASE trifactaauthorizationservice WITH OWNER trifactaauthorizationservice;"

Orchestration Service database:

(Release 7.1 and later)

psql -c "DROP DATABASE trifactaorchestrationservice;"
psql -c "CREATE DATABASE trifactaorchestrationservice WITH OWNER trifactaorchestrationservice;"

Optimizer Service database:

(Release 7.6 and later)

psql -c "DROP DATABASE trifactaoptimizerservice;"
psql -c "CREATE DATABASE trifactaoptimizerservice WITH OWNER trifactaoptimizerservice;"

Secure Token Service database:

(Release 8.1 and later)

psql -c "DROP DATABASE trifactasecuretokenservice;"
psql -c "CREATE DATABASE trifactasecuretokenservice WITH OWNER trifactasecuretokenservice;"

Connector Configuration Service database:

(Release 8.1 and later)

psql -c "DROP DATABASE trifactaconnectorconfigurationservice;"
psql -c "CREATE DATABASE trifactaconnectorconfigurationservice WITH OWNER trifactaconnectorconfigurationservice;"

Uninstall and reinstallAlteryx software

Steps:

  1. Uninstall the current version of the Alteryx software:

    Note

    All platform and cluster configuration files are preserved. User metadata is preserved in the Alteryx database.

    CentOS/RHEL:

    sudo rpm -e trifacta

    Ubuntu:

    sudo apt-get remove trifacta 
  2. Perform a clean install of the Alteryx software provided in your distribution. See Install.

Restore databases and config files

You can use the following commands in the sections for manual restores of:

  • Databases

    • PostgreSQL

    • MySQL

  • Configuration files

Restore databases - PostgreSQL

Alteryx database:

psql --dbname=trifacta < trif_triDB_bkp_<date>.sql

Jobs database:

Note

Please note the escaped quotes in the CREATE DATABASE command for this database.

psql --dbname="trifacta-activiti" < trif_actDB_bkp_<date>.sql

Scheduling database:

psql --dbname=trifactaschedulingservice < trif_schDB_bkup_<date>.sql

Time-based Trigger Service database:

psql --dbname=trifactatimebasedtriggerservice < trif_tbtsDB_bkup_<date>.sql

Configuration Service database:

(Release 6.0 and later)

psql --dbname=trifactaconfigurationservice < trif_confservDB_bkup_<date>.sql

Artifact Storage Service database:

(Release 6.0 and later)

psql --dbname=trifactaartifactstorageservice < trif_artifactstorageservDB_bkup_<date>.sql

Job Metadata Service database:

(Release 6.4 and later)

psql --dbname=trifactajobmetadataservice < trif_jobmetadataservDB_bkup_<date>.sql

Authorization Service database:

(Release 7.1 and later)

psql --dbname=trifactaauthorizationservice < trif_authorizationservDB_bkup_<date>.sql

Orchestration Service database:

(Release 7.1 and later)

psql --dbname=trifactaorchestrationservice < trif_orchestrationservDB_bkup_<date>.sql

Optimizer Service database:

(Release 7.6 and later)

psql --dbname=trifactaoptimizerservice < trif_optimizerservDB_bkup_<date>.sql

Secure Token Service database:

(Release 8.1 and later)

psql --dbname=trifactasecuretokenservice < trif_securetokenservDB_bkup_<date>.sql

Connector Configuration Service database:

(Release 8.1 and later)

psql --dbname=trifactaconnectorconfigurationservice < trif_connectorconfigurationservDB_bkup_<date>.sql

Restore databases - MySQL

For details, see https://dev.mysql.com/doc/refman/5.7/en/reloading-sql-format-dumps.html.

Login:

su - mysql

Alteryx database:

mysql trifacta < trif_triDB_bkp_<date>.sql

Jobs database:

mysql trifacta-activiti < trif_actDB_bkp_<date>.sql

(Release 4.1 and later) Scheduling database:

mysql trifactaschedulingservice < trif_schDB_bkup_<date>.sql

(Release 4.1 and later) Time-based Trigger Service database:

mysql trifactatimebasedtriggerservice < trif_tbtsDB_bkup_<date>.sql

(Release 6.0 and later) Configuration Service database:

mysql trifactaconfigurationservice < trif_confservDB_bkup_<date>.sql

(Release 6.0 and later) Artifact Storage Service database:

mysql trifactaartifactstorageservice < trif_artifactstorageservDB_bkup_<date>.sql

(Release 6.4 and later) Job Metadata Service database:

mysql trifactajobmetadataservice < trif_jobmetadataservDB_bkup_<date>.sql

(Release 7.1 and later) Authorization Service database:

mysql trifactaauthorizationservice < trif_authorizationservDB_bkup_<date>.sql

(Release 7.1 and later) Orchestration Service database:

mysql trifactaorchestrationservice < trif_orchestrationservDB_bkup_<date>.sql

(Release 7.6 and later) Optimizer Service database:

mysql trifactaoptimizerservice < trif_optimizerservDB_bkup_<date>.sql

(Release 8.1 and later) Secure Token Service database:

mysql trifactasecuretokenservice < trif_securetokenservDB_bkup_<date>.sql

(Release 8.1 and later) Connector Service database:

mysql trifactaconnectorconfigurationservice < trif_connectorconfigurationservDB_bkup_<date>.sql
Restore config files

Restore your configuration files. The following commands assume that they were backed up to the /tmp directory on the node:

cp /tmp/trifacta-conf.json  /opt/trifacta/conf/trifacta-conf.json
cp /tmp/env.sh /opt/trifacta/conf/env.sh
cp /tmp/trifacta.service /etc/init.d/trifacta

Restart

Apply any patches or maintenance updates that may have been provided to you.

Restart the platform.See Start and Stop the Platform.

Verify

Login and verify operations.See Verify Operations.