[frs-326] Upgrading to FusionReactor v5.0.9 – Special Release Notes

Background

FusionReactor v5.0.9 contains a lot of improvements and fixes. This technote describes in more detail than the standard release notes some of the important changes in behaviour, and reasons why this has been decided.

Default Configuration

JDBC (Logging)

Versions of FusionReactor prior to v5 required a manual step to collect DB data (call JDBC wrapping). This effectively meant that JDBC logging to disk was disabled until a manual action was taken. In FusionReactor v5, that is no longer necessary. This results in the default action of logging JDBC calls to disk. Whilst on a server class system, the I/O overhead is minimal, the disk-space impact on a busy server can be considerable. Although FusionReactor has many features to configure the management of the log files, the default settings may not be appropriate for all environments and could lead to failure due to full disks.

v5.0.9 improve this by disabling JDBC logging to disk by default – when there is no FusionAnalytics target defined at first run after upgrade.

Those using FusionAnalytics will typically want to store the logs and have an appreciation (and appropriate log management configuration) for log analysis – therefore the JDBC logging to disk will remain enabled by default (when a FusionAnalytics target is already defined at first-run after upgrade).

JDBC logging to disk can easily be enabled/disabled through the web interface. For further details, please refer to our JDBC Settings documentation.

Note: This does not impact the level of JDBC information available through the web-interface.

JDBC (Query Location)

The "Query Location" feature of FusionReactor records the file name & line number where a JDBC query was executed. This lookup can be expensive in terms of overhead. In earlier versions of FusionReactor, it was transparent when this overhead was added due to the manual step of adding DB tracking (called JDBC wrapping). In v5, this is no longer necessary as DBs are tracked automatically, as such it is less visible which part of FusionReactor is causing the overhead. Typically, most engineers are concerned with slow running queries. We have therefore decided an additional option for Query Location tracking should be available.

By default, Query Locations will now only be tracked where the JDBC transaction is equal to or longer than 100ms AND there is no FusionAnalytics target defined at the first start-up after upgrade.

Those with the benefit of access to the FusionAnalytics software have several reports at their disposal that make use of the Query Location values.

You can return the the v5.0.8 and earlier behaviour by setting the Query Location tracking to always:

  • Query Location: Always
  • Only queries slower than: 0ms

To revert back to the new v5.0.9 defaults:

  • Query Location: Always
  • Only queries slower than: 0ms

For further details, please see the JDBC Settings documentation.

ColdFusion "Query of Queries" (QofQ)

Tracking of CFML engine's QofQ operations were enabled by default in v5.0.0 through v5.0.8. In v5.0.9, they are now disabled. The reasoning for this is the comparatively high overhead when running these fast in-memory queries.

For example, assuming a typical "real" DB query would take 10ms and FusionReactor has overhead of 0.01ms (i.e. 0.1%) – this would be very acceptable for the benefit of the monitoring data. However, a QofQ operation may take just 0.1ms with an overhead of 0.01ms (i.e. 10%) – this would not normally be acceptable and typically noticeable to the application users.

To force enable/disable tracking for Query of Queries (QofQ) please see technote FRS-327

New Feature: Daily Report

FusionReactor v5.0.9 has the ability to send a daily email report each morning containing an activity summary of the instance for the past day. Metrics included are:

  • Uptime (percentage)
  • Downtime (hours, minutes, seconds)
  • Outages (count)
  • Web Requests
  • Average Web Response Time
  • Average JDBC Response Time
  • HTTP 500 count
  • Average Heap Memory Utilization (percentage)
  • Average CPU Utilization (percentage)

The feature is enabled by default and will use the configured email settings. If you have the email server settings configured, you will start to receive daily reports the day after installation.

If there are no email server settings configured and the report is enabled, a notification will be generated for that instance at startup.

If you wish to enable/disable Daily Reports or change the email address(es) they are sent to, use the FusionReactor -> Plugins -> Active Plugins page and click the Configuration button for the FusionReactor Daily Report plugin.

Further details are available on the FusionReactor plugins documentation page.

Other

  • Improved UI usability (particularly for IE8)
  • Reduced memory footprint
  • Improved performance
  • Improved documentation
  • Improved Java 5 Support
  • Improved server detection & licensing system
  • Improved validation & error handling
  • Updated bundled FRAM JVM

Release notes

A full list of changes included in this release can be seen in the release notes.

Roll-back to v5.0.8

Configuration files from v5.0.9 are no longer compatible with v5.0.0 through v5.0.8. There is a manual process to downgrade without loosing your settings:

  1. Download v5.0.8 https://www.fusion-reactor.com/wp-content/uploads/builds/fr/5.0.8/fusionreactor.jar
  2. Stop your instance (eg Stop the ColdFusion Windows service)
  3. Rename FusionReactor/instance/<instance name>/fusionreactor.jar to FusionReactor/instance/<instance name>/fusionreactor.jar.v5.0.9
  4. Copy the fusionreactor.jar downloaded in step 1 to FusionReactor/instance/<instance name>/fusionreactor.jar
  5. Open FusionReactor/instance/<instance name>/conf/reactor.conf for editing
  6. Change version=6 to version=5
  7. Start your instance

Support

If you have questions or issues with any of the above, Intergral (makers of the Fusion product suite) have several support channels:

Critical Problems (eg instance won't start)

In a critical case, you can always easily temporarily remove FusionReactor from your server until you're able to contact our support team. To do so, follow the below procedure:

  1. Stop your instance (if not done so already)
  2. Find where your JVM arguments are configured (eg jvm.config file for AdobeCF, RailoW for Railo on Windows, catalina.sh for Railo on *nix)
  3. Remove the -javaagent:/path/to/fusionreactor.jar entry in your JVM arguments
  4. Start your instance
  5. Contact our support team

Issue Details

Type: Technote
Issue Number: FRS-326
Components: Documentation, JDBC
Environment:
Resolution: Fixed
Last Updated: 18/Nov/13 3:34 PM
Affects Version: 5.0.0
Fixed Version: 5.0.0
Server:
Platform:
Related Issues:

Comments are closed.