Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 38 Next »

This article describes the ways to upgrade the FIXEdge to new version.

How to upgrade FIXEdge while the current version is up and running

This section shows how to setup an upgraded version of FIXEdge and transfer all required configuration without stopping the current working FIXEdge version.

Preparation

  1. Make sure you have sufficient administration permissions for further uninstall/install procedures.
  2. Download new FIX Edge package for the corresponding OS version;
  3. Make a copy of your current installation (configuration and binaries);
  4. Make a copy of your current license (engine.license).
    If your license has expired or was lost, contact sales@btobits.com to obtain the new one;
  5. Prepare configuration amendments in case you plan to change any credentials, destination folders, connection parameters, etc. Refer to configuration guides for assistance;

Your current version of FIXEdge will be up and running all the time during the upgrade procedure.

For FIXEdge version 6.5.0 and higher VS2015 C++ redistributable is required. It can be found in FIXEdge's \Redist directory or downloaded from Microsoft web-site.

Upgrade Process

The detailed installation guide is presented here: FIXEdge Installation GuideHowever, the main part of the new upgraded FIXEdge version setup is to make sure that the new FIXEdge configuration is the same as in the current version.

For steps 2-3 described below it is recommended to operate with made copy of your current installation for safety reasons. It should prevent user from unintended/occasional breaking of the running FIXEdge version.

  1. Unpack the archieve with new FIXEdge version;

  2. FIXEdge configuration parameters adjustment:

    1. Replace all files in FIXEdge1\conf directory of the new FIXEdge instance with ones from the made copy of you current FIXEdge version;
  3. FIXICC configuration parameters adjustment:
    1. If you don't have any specific FIXICC/FIXICC Agent configuration in your current FIXEdge instance, then you may skip step 3.
    2. If you setup any specific configuration for FIXICC for your current FIXEdge instance, then:
      1. Replace fixengine.properties file in fixicc\etc directory of the new FIXEdge instance with one from the made copy of you current FIXEdge version;
      2. Replace log4j.properties file in fixicc\etc\fixicc directory of the new FIXEdge instance with one from the made copy of you current FIXEdge version;
    3. If you setup any specific configuration for FIXICC Agent for your current FIXEdge instance, then replace the following files in fixicc-agent\FIXEdge1.fixicc-agent\conf directory of the new FIXEdge instance with ones from the made copy of you current FIXEdge version:
        1. agent.properties
        2. fixengine.properties
        3. log4j.properties
        4. OrderAckTCPMonitor.properties
        5. security.properties

    It is critically important to make sure that all the copied configuration files do not contain absolute paths in specified parameters. If you have such, need to replace it with a relative path or new absolute path.

    Until the version, 5.11 FIXEdge's instance directory had the name <FixEdge1>. Since version 5.11 FIXEdge's instance directory name is <FIXEdge1>.

  4. If you use Transport Adaptors or Handlersneed to make sure that they are configured properly:

    If you have several instances of one Transport Adapter in your current configuration, please follow the How to configure several instances of one adapter instruction to setup it in a new configuration.

    1. If you use JMS AdaptorRabbitMQ AdaptorSMTP AdaptorFMXML HandlerBLLanguageExtension Handler - all corresponding libraries are already in FIXEdge1\bin directory of the new FIXEdge instance, nothing is required;
    2. If you use any other Transport Adaptors or Handlers, you need to put corresponding libraries to FIXEdge1\bin directory of the new FIXEdge instance - see the installation guides for each adaptor/handler for details;

    3. If you use CME STP Adapter, it is necessary to upgrade the adapter after the FIXEdge upgrade procedure.

  5. If you use Failover Cluster, please follow Failover Cluster instruction to configure it for new FIXEdge instance;
  6. Make sure that your configuration files correspond last changes/improvements in new product versions:
    1. Visit FIXEdge Release Notes page;
    2. Look through the changes made from the current FIXEdge version to target FIXEdge version:

      1. If last product changes require an update of your current FIXEdge's and FIXICC's config files, adjust them to satisfy new requirements;
      2. If last product changes don't affect your current FIXEdge's and FIXICC's config files, you may leave them as is;
      3. In case of doubts, please contact SupportFIXAntenna@epam.com;
  7. Copy your FIXEdge license into the license file path;
  8. Stop your current FIXEdge process;
  9. Stop your current FIXICC-agent process;
  10. If using the Managed Queue, refer to the instructions below:
    1. To check if Managed Queue is in use, check if the FixLayer.ManagedQueue.Sessions parameter is in use.
    2. Make sure the FIXEdge queue is empty
    3. Delete the Managed Queue storage file from the disk by searching for its name
      1. By default, the storage file will be named fe.db
      2. The file's name may have been customized via the fixedge.properties file (for example, FixLayer.ManagedQueue.Storage.SQLite.FileName=customname.db)
      3. This file won't exist if the Managed Queue is not in use
    4. A new file will be created automatically after restarting the FIXEdge instance.
  11. Uninstall your current FIXEdge service(s);
  12. Uninstall your current FIXICC Agent service(s);
  13. Remove all content of FIXICC's working dir <.fixicc>  except servers.xml file. Working dir is normally placed in C:\Users\%USER%\AppData\Roaming directory;
  14. Make sure that FIXEdge and FIXICC Agent are uninstalled in your system.
  15. Install new FIXEdge service(s);
  16. Install new FIXICC-agent service(s);
  17. Start the new FIXICC-agent process;
  18. Start the new FIXEdge process.

In order to ensure that upgraded FIXEdge was successfully setup, you may check the log files:

If you check the FixEdge.log file of the upgraded version of FIXEdge, you will find the following record:

FixEdge.log
2016-09-20 10:46:19,459 UTC   INFO    [CC_Layer]  5552  FIXEdge Version X.Y.Z (rxyz) started

How to revert upgrade procedure

If you need to revert changes in order to use your original FIXEdge version (that was used before the upgrade), you need to do the following steps:

  1. Stop the FIXEdge process;
  2. Stop the FIXICC-agent process;
  3. Uninstall the FIXEdge service(s);
  4. Uninstall the FIXICC Agent service(s);
  5. Remove all content of FIXICC's working dir <.fixicc>  except servers.xml file. Working dir is normally placed in C:\Users\%USER%\AppData\Roaming directory;
  6. Restore your backup copy with original FIXEdge version;
  7. Install the FIXEdge service(s) of the restored original FIXEdge version;
  8. Install the FIXICC-agent service(s) of the restored original FIXEdge version;
  9. Start the FIXICC-agent process of the restored original FIXEdge version;
  10. Start the FIXEdge process of the restored original FIXEdge version.

How to upgrade the current FIXEdge version to the new one

This section shows how to upgrade the existing FIXEdge version and keep all configuration files unchanged.

Upgrade Preparation

  1. Make sure you have sufficient administration permissions for further uninstall/install procedures.
  2. Download new FIX Edge package for the corresponding OS version;
  3. Stop the FIXEdge process;
  4. Stop the FIXICC-agent process;
  5. Uninstall the FIXEdge service(s);
  6. Uninstall the FIXICC Agent service(s);
  7. Remove FIXICC's working dir <.fixicc> normally placed in C:\Users\%USER%\AppData\Roaming directory;
  8. Make a backup copy of your current installation (configuration and binaries);
  9. Make a backup copy of your current license (engine.license).
    If your license has expired or was lost, contact sales@btobits.com to obtain the new one;
  10. Prepare configuration amendments in case you plan to change any credentials, destination folders, connection parameters, etc. Refer to configuration guides for assistance;

For FIXEdge version 6.5.0 and higher VS2015 C++ redistributable is required. It can be found in FIXEdge's \Redist directory or downloaded from Microsoft web-site.

Upgrade Process

  1. Upgrade FIXEdge itself:
    1. For Windows version:
      Replace* files in FIXEdge's <bin> directory with new binaries from the FIXEdge package;
    2. For Linux version:
      Replace* files in FIXEdge's <bin> directory with new binaries from the FIXEdge package - all except *.sh files;
  2. Upgrade FIXICC:
    1. Replace* files in FIXEdge's <fixicc-agent> directory with new ones from the FIXEdge package – all except *.properties files;
    2. Replace* files in FIXEdge's <fixicc> directory with new ones from the FIXEdge package – all except *.properties files;
  3. Upgrade Transport Adaptors and Handlers if use them:
    1. Visit FIXEdge Release Notes page;
    2. Look through the changes made with Transport Adaptors and Handlers from you current FIXEdge version to target FIXEdge version:
      1. If any improvements/bugfixes were done in JMS Adaptor, then:
        1. Replace* all jar files for JMS adapter with new jar files from the FIXEdge package in FIXEdge's FIXEdge1\conf\jms-ta-distribution\lib directory;
        2. Replace* all jar files for JMS adapter with new jar files from the FIXEdge package in FIXEdge's FIXEdge1\conf\jms-ta-distribution\tool\lib directory;
      2. If any improvements/bugfixes were done in RabbitMQ Adaptor, then:
        1. Replace* all jar files for RMQ adapter with new jar files from the FIXEdge package in FIXEdge's FIXEdge1\conf\amqp-ta-distribution\lib directory;
      3. If any improvements/bugfixes were done in other Transport Adaptors or Handlers, then:
        1. Replace* corresponding binaries with new ones from the package with SupAdapters in FIXEdge's <bin> directory;
      4. If no improvements/bugfixes were done, you may skip step 4;
      5. In case of doubts, please contact SupportFIXAntenna@epam.com;

      In case you have several instances of one Transport Adaptor (it means there are several copies of one TA library), need to upgrade all of them.

    "Replace" in this context means that files should be deleted from the current FE directory and new files from the package should be added there. This clarification is made in order to avoid the situation when two (or more) same libraries with different versions appear in the directory as it may cause issues.

    Until the version, 5.11 FIXEdge's instance directory had the name <FixEdge1>. Since version 5.11 FIXEdge's instance directory name is <FIXEdge1>.

  4. Make sure that your configuration files correspond last changes/improvements in new product versions:
    1. Visit FIXEdge Release Notes page;
    2. Look through the changes made from the current FIXEdge version to target FIXEdge version:

      1. If last product changes require an update of your current FIXEdge's and FIXICC's config files, adjust them to satisfy new requirements;
      2. If last product changes don't affect your current FIXEdge's and FIXICC's config files, you may leave them as is;
      3. In case of doubts, please contact SupportFIXAntenna@epam.com;
  5. Copy your FIXEdge license into the license file path;
  6. Install the FIXEdge service(s);
  7. Install the FIXICC-agent service(s);
  8. Start the FIXICC-agent process;
  9. Start the FIXEdge process.

In order to ensure that the FIXEdge was successfully upgraded to the desired version, you may check the log files:

If you check the FixEdge.log file, you will find the following record:

FixEdge.log
2016-09-20 10:46:19,459 UTC   INFO    [CC_Layer]  5552  FIXEdge Version X.Y.Z (rxyz) started

How to revert upgrade procedure

In order to revert the upgrade, you should take your made backup copy and go through all the steps described above. 

In other words, the procedure is absolutely the same, the only difference is that the backup copy is the target FIXEdge version in this case.


Troubleshooting

FIXEdge started to fail after the Upgrade

If FIXEdge started to crash after the upgrade and some adapters or handlers is used in the configuration probably step #4 in Upgrade process wasn't done properly

Please check that all adapters and handlers (e.g. CME STP Adapter) have the same revision as FIXEdge in versions.log

versions.log
2019-08-05 19:46:17,886 UTC   INFO    [Version]  22036  TransportLayer' version 0.1.1.5(r31)
2019-08-05 19:46:17,886 UTC   INFO    [Version]  22036  FIXEdge version 6.7.0 (r31)
2019-08-05 19:46:18,317 UTC   INFO    [Version]  22036  FIXMLConverter version 0.0.2.19(r31)
2019-08-05 19:46:18,390 UTC   INFO    [Version]  22036  BusinessLayer version 0.0.20.00(r31)
2019-08-05 19:46:18,392 UTC   INFO    [Version]  22036  Engine Adaptor version 0.0.1.17(r31)
2019-08-05 19:46:18,402 UTC   INFO    [Version]  22036  The B2BITS FIX Engine 2.25.1 (r51)
2019-08-05 19:46:19,279 UTC   INFO    [Version]  22036  FIX Engine AdminProtocol version 3.0
2019-08-05 19:46:22,398 UTC   INFO    [Version]  22036  FixEngine version 0.0.2.2(r31)
2019-08-05 19:46:22,399 UTC   INFO    [Version]  22036  FixLayer version 0.2.1.5(r31)
2019-08-05 19:46:22,411 UTC   INFO    [Version]  22036  STP Transport Adaptor version 0.1 (r31)

Solution:

Upgrade transport adapters and handlers to the same version as FIXEdge


  • No labels