Upgrading to Tcat 7.1.0

Tcat Server reached its End of Life in 2017. Contact your Customer Success Manager to determine options for managing, monitoring, or deploying your application.

The upgrade is done in three phases.

  1. Back up the existing installation.

  2. Migrate tcat-data to newer schema using the migration-util.jar.

  3. Install Tcat Server and replace its tcat-data with the upgraded tcat-data (Step 2 above).

Back Up the Existing Installation

  1. Stop Tcat Server.

  2. Take a complete backup of your existing installation of Tcat Server. This should include everything in your Tcat Server installation directory.

Migrate the Existing tcat-data to a Newer Schema

  1. Create a directory named work.

  2. Download migration-util-7.1.0.jar from the support portal and put it in the work directory.

  3. Make a copy of the tcat-data directory from the existing Tcat Server backup and put that tcat-data in the work directory.

  4. Download repository.xml and put it in the tcat-data directory.

  5. Download new-repository.xml and put it in the work directory.

  6. If you have a large tcat-data, make sure you have a directory with enough space which could be used as a temp directory. Let’s assume that the directory is /home/mulesoft/tmp. Also make sure you have at least 1 GB of memory available to allocate to the heap in the JVM

  7. Delete the following directories from tcat-data:

    1. tcat-data/repository/index

    2. tcat-data/workspaces/default/index

  8. In the work directory, make a new directory named target-data. This is where the upgraded database are stored

  9. Now run the following command to perform the migration (replace the value of -Djava.io.tmpDir with your temporary directory). This step takes a few minutes to complete. The larger your tcat-data, the longer it takes:

java -Xmx1g -Djava.io.tmpdir=/home/mulesoft/tmp -jar migration-util-7.1.0.jar --backup --repo tcat-data --conf tcat-data/repository.xml --backup-repo target-data/

Error At The End of the Migration

The following error appears when the migration finishes, ignore this error since it is expected:

Import error on line 1 of file /var/folders/3b/wdmt1kyd0kd5gg0_112m7v8m0000gn/T/QRTZ_LOCKS.dat: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'SQL140508230804700' defined on 'QRTZ_LOCKS'.

Install Tcat Server 7.1.0

  1. Start the installer and accept the defaults. Make sure to choose a different location for installation i.e. do not install over the existing Tcat Server.

  2. Start Tcat Server.

  3. Important: Clear your browser’s cache.

  4. Open a browser and login to the admin console (username:admin, password:admin)

  5. When you are able to successfully log in, close the browser, and stop Tcat server (bin/tcat7 stop).

  6. Delete the tcat-data directory from the Tcat Server and replace it with the target-data directory.

  7. Rename target-data to tcat-data.

  8. Start Tcat Server again (use tail on the logs to see any errors) and log in using your credentials.

  9. If you have large tcat-data, then the server start might take more than an hour because the newly migrated tcat-data’s lucene indexes are being generated.

Error compiling groovy scripts

While tailing the logs, you might see errors while compiling groovy scripts. These are expected since some of your groovy scripts may be using an outdated API. Let the Tcat support team know about these scripts and they can work with you to update them or you may even no longer need them anymore.

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub