Product Name: FioranoMQ
Version: 9.1.1
Date: January 07, 2010
Fiorano Software is releasing version 9.1.1 of FioranoMQ. This release notes provides information about the enhancements and the resolved issues in this release.
Note: Visit the Fiorano Support Portal http://support.fiorano.com for details about any subsequent patches for this release. We recommend you to check for Patches prior to the installation.
This section describes the new features introduced in the FioranoMQ 9.1.1 release.
1. Performance improvement
Performance have been improved significantly in the FioranoMQ server particularly in the cases where there are a large number of Publishers and/or Subscribers under a single connection.
Optimizations have been made in the client-runtime as well as at the server level for a better performance for both Non-Persistent messages as well as Persistent messages with Durable Subscribers. The non-persistent message flows have been optimized based on the network speed and server processing capability. Durable subscribers will now process messages much faster when run under a single connection. The performance optimizations significantly improve server scalability in comparison with previous releases.
Latest JMS performance comparison charts can be found at the Fiorano website: www.fiorano.com. FioranoMQ now outperforms all other JMS servers on the market by a significant margin.
The samples used for testing JMS server performance are in the {FIORANO_HOME}/fmq/samples/perftests.
This section describes known issues and work around for the 9.1.1 release.
The third party libwww libraries that are used for http support in C/C++ are not compatible in Solaris (x86) as they are compiled on Linux. Since the third party libraries are not compatible, http samples will not run on Solaris (x86).
Work around:
In order to run http samples compile open source libwww on Solaris and replace the built libraries (libhttp.so, libmd5.so, and so on) in fmq\clients\c\native\lib folder.
By default, the MessageID will not be populated in the Message with the Default MQ profile. This is generally not an issue and FMQ has been configured this way by default for performance reasons. However, it is easy to change the configuration.
Work Around 1:
Navigate to %PROFILE_NAME%->Fiorano->etc->FMQConfigLoader in Studio, and set the value of “IncludeMessageID” property as TRUE.
Work Around 2:
Add this following line in your client code before sending the message.
producer.setDisableMessageID(false);
Producer is equivalent to the MessageProducer in the client code. Putting this line will enable MessageID for this particular client.
For Non-Persistent Messages, the InvalidDestinationException will not be thrown while sending the Message for a non-existing destination, but rather FioranoException(extension of JMSException) will be raised at the ExceptionListener. This is generally not an issue and FMQ has been configured this way by default for performance reasons. However, it is easy to change the configuration.
Work Around 1:
For NP messages, batching is by default enabled which leads to the above explained behavior. To get the InvalidDestinationException at the send API, set the BatchingEnabled parameter in the ConnectionFactory as FALSE.
Work Around 2:
Add this following line in your client code environment while performing the lookup,
env.put("BatchingEnabled", "false")
Where env is the environment passed while performing a JNDI lookup. This will disable batching for this particular client.
This section describes the new features introduced in the FioranoMQ 9.1.0 release.
1. Directory Services Implementation
FioranoMQ 9.1.0 ships with a directory service implementation that allows users to share and manage FioranoMQ (FMQ) profiles in a centralized manner. Apart from helping manage the profiles via a central repository, the directory service also greatly simplifies the storing of information pertaining to each server is registered with the profile. The directory service is also used to manage resources other than profiles.
2. HA Implementation Enhancements
FioranoMQ9.1.0 has several enhancements in the implementation of its High Availability servers. A lock file has been introduced to ensure better state synchronization. The HA servers are now a lot more robust while handling network outage scenarios.
3. Message Journaling Support
Message Journaling is a FioranoMQ9.1.0 feature that allows an application to replicate the messages arriving at a destination to another destination of similar type. Message Journaling essentially means to copy a message from one destination to another destination of similar type. When Journaling is enabled, a console-based application can be written in order to consume messages from either of these two destinations. This functionality can be used to audit all the messages that have ever been received on a particular destination.
4. Destination Level configuration
Parameters at the Subsystem level that are also relevant on a per-destination basis are now configurable at the destination level. For instance, users can now have different values of PurgeLevelIndex for different topics.
5. Queue/Topic depth monitoring
Depth monitoring is used to monitor the number of pending messages that are currently available on a destination. Depth monitoring fires JMX notifications in situations when the depth of a destination crosses a particular threshold in either direction (increasing or decreasing queue sizes) or if destination is idle for a particular amount of time. Depth monitoring in FioranoMQ 9.1 is only implemented for Queues. Future versions may extend this feature to Topics.
6. Samples to integrate with the Spring Framework
JMS samples have now been provided that are compatible with and configurable using the Spring Framework. The Spring Framework in a messaging context can be used to provide configurative registration of message listener objects for transparent message consumption from message queues via JMS, an improvement of message sending over standard JMS APIs.
7. Enhancements in DB recovery tool
The recovery tool now provides much information on what exactly is corrupted, together with the steps that have been taken in recovering the same.
The following changes are included in the FioranoMQ 9.1.0 release:
1. Default PingEnabling
FioranoMQ9.1.0 now has default support for pinging. Pinging a connection helps identify if the connection has gone stale or is broken due to network problems. This feature, which was also available in previous releases, is now enabled by default in FioranoMQ9.1.0 for all profiles.
2. Inconsistency in text based configuration resolved
Prior to FioranoMQ9.1.0, there were a few irregularities with the Text based configuration file within each profile. This caused a few difficulties for users who were used to editing profiles using Studio. A few parameters like the URL in the RDBMS manager were not being set even after saving profile via the Studio. The text based configuration is now much more robust while handling a profile saved using Studio.
This section describes issues resolved in 9.1.0 release
Separate session threads to be named differently.
Unable to reset password without the providing the current password for Administrators.
ListActiveClientConnections of AdminService MBean should include information about ClientIDs.
Non persistent messages must be dropped when sent in batch mode with insufficient credentials.
Server does not start properly with old databases; need to provide DB up gradation tool.
Client to start multiple pinger threads, in case, connections are made to multiple servers (running on different machines).
Text based configuration support needed for StandAloneBridge and StandAloneRepeater profiles.
PTP clients go into blocked state when messages are purged from the queue.
Closing a queue sender with queue name set to ‘null’ is throwing exception on the console.
Sometimes Unified Sessions doesn’t gets closed in Unified domain.
Unable to create route with message selector.
FMQ Samples without JNDI are required.
Dynamically added link does not start in repeater.
Replicated HA Primary server should not run with shared HA Secondary server and vice versa.
Support for Large Messages in C and C++ runtime.
Improved thread management in FMQ Dashboard.
Unable to start repeater while using dynamic topics.
Offline configuration for individual destinations should be supported.
Mbean summary should be visible from dashboard.
In dashboard, user must be able to distinguish all mbeans in JMX tree.
Bridge does not reconnect properly.
In Repeater/Bridge starting an already started link leads to incorrect behavior.
Running create-database script when Configs.cfg only is changed doesn't result as expected.
WMT: A timer thread started for the graphs does not stop even after you log out from it
Export/Import Topics or Queues functionality works incorrectly in WMT when description is set to null or empty string.
Dashboard is not allowing to delete topics with their names containing '*'
Security Credentials {Username and Passwd} are not getting changed properly when editing the Link Configuration for Bridges.
In ConfigureUsers TAB of Dashboard, the number of action buttons for ChangePassword operation needs to be optimized.
Adding MonitorLink and saving configuration leads to NPE
Policies Tab is not updating ACL properly in the scenario of removing default ACL.
This section describes the new features introduced in the FioranoMQ 9.0.1 release.
1. DataBase upgradation
utility
A script based utility has been added to automate upgrade of older versions
of FioranoMQ databases to FioranoMQ 9. This enables user to use their
old databases with latest FioranoMQ version, thus ensuring that
any data available in the old database is compatible with the latest FioranoMQ
version. The script while accepting minimal inputs provides all relevant
migration changes seamlessly. More detailed instructions on running this
script and the various input parameters required are explained in the
README file at
{FIORANO_HOME}/fmq/bin/Linux_DBMigration/Readme.txt or
{FIORANO_HOME}\fmq\bin\Windows_DBMigration\Readme.txt in the latest version.
This section describes the new features introduced in the FioranoMQ 9.0.0 release.
1. Enhanced Property file based HA profile configuration
All the important parameters like backup HA IP address, port, gateway IP address etc, which are used in HA configuration files are grouped at the start of the HA configuration files. This enables users to edit the configuration files easily to set up replication HA and shared HA profiles.
2. Client Side logging support in C/C++ runtimes
Support has been added for Client Side logging to record information relating to the flow of client applications, error statements and information relating to the memory being freed up as applications execute and close. This helps in getting more debug information in case of production issues. For more information on how to set different log levels, to enable or disable logging, and to set log names please refer to FioranoMQ CRTL Guide and FioranoMQ C++ RTL Native Guide for C and C++ runtimes respectively.
3. Enhanced Client Side Persistence (CSP) in C/C++ runtimes
New APIs have been added in order to browse the CSP messages, such as getting the number of messages in CSP Queue or Topic, retrieving queues, topics on a connection etc. Please refer to the FioranoMQ CRTL Guide and FioranoMQ C++ RTL Native Guide for C and C++ runtimes respectively for a detailed description of each API.
4. Enhanced FioranoMQ web console
The following new tabs have been added for configuration or monitoring:
A dispatcher tab which enables operations such as adding and removing servers to the Dispatcher-enabled MQ Server.
A Sockets view tab to monitor all the open Sockets on the FMQ Server.
A System properties tab which lists all the java system properties that are set in the JVM in which the FMQ Server is running.
An Enhanced Connections tab which lists all the JMX connections made to the FMQ Server.
5. Bug fixes (including bugs reported through the Fiorano Support Portal).
For more details, see Resolved Issues section.
This section describes issues resolved in 9.0.0 release.
Crash in C runtime with multiple disconnects with server while using CSP
In HA after multiple failovers messages are not received consistently
In case of persistent messages, the messages does not get persisted into the message store when the message index in the message store reaches to the maximum integer value that is Integer.MAX_INT.
In the web management tool, the image files created for generating the graphs does not get deleted.
Delay in message delivery in case of onMessage exception
ListTopics is not displaying all topics information properly
Invoking MBean operations such as showLinkTopicConfiguration and showReplyTopicConfiguration in Repeater leads to improper results.
The subscriber throws socket timeout exception when the server takes long time to come back due to power failure.
The log files does not get created in the path specified by the dbPath argument.
Exception while adding file appender to Logger through JMX
In Solaris machine StandAloneRepeater Profile gets corrupted after saving its configuration.
Show Alerts in WMT related to memory status
New Hierarchal Topics samples in C/C++ clients
Web Management tool should show the server’s starting time
Exception on restarting the dispatcher after adding servers to cluster and saving configuration.
This section summarizes the minimum system requirements for FioranoMQ. The actual product documentation includes the same in detail:
|
Platform |
Requirements |
Comments |
|
Windows |
Microsoft® NT Server 2003, XP Professional Java 5 or above Min Physical RAM : 256 MB Min Disk Space : 500 MB |
Fiorano Studio requires Java 5 or above |
| Linux |
Red Hat, Suse, Debian Java 5 or above Min Physical RAM : 256 MB Min Disk Space : 500 MB |
Fiorano Studio requires Java 5 or above |
|
HP-UX |
11i and above Java 5 or above Min Physical RAM : 256 MB Min Disk Space : 500 MB |
Fiorano Studio requires Java 5 or above |
| IBM AIX |
5x and above Java 5 and above Min Physical RAM : 256 MB Min Disk Space : 500 MB |
Fiorano Studio requires Java 5 or above |
| Solaris |
9x and above Java 5 and above Min Physical RAM : 256 MB Min Disk Space : 500 MB |
Fiorano Studio requires Java 5 or above |
The entire FioranoMQ documents are available online. The FioranoMQ documentation includes:
|
Document Name |
Description |
|
FioranoMQ Concepts Guide |
Contains description on concepts and features of FioranoMQ. |
|
FioranoMQ Handbook |
Contains detailed description on how to use FioranoMQ and its features. |
| FioranoMQ Reference Guide |
Contains detailed description and examples for all the parameters used in FioranoMQ server and other components of FioranoMQ. |
|
FioranoMQ Best Practices Guide |
Contains the information about the performance tuning and deployment parameters. |
|
FioranoMQ High Availability Guide |
Contains the salient features of FioranoMQ's HA solution. It explains the working and the underlying architecture of the entire solution. It also provides step by step instructions on enabling HA in FioranoMQ. |
|
FioranoMQ Getting Started
|
Contains the information on startup to assist users of FioranoMQ. This document introduces users to the components of FioranoMQ and briefly explains the working of these components. |
|
FioranoMQ JMX API Guide |
FioranoMQ exposes a lot of JMX API’s which the user can invoke at runtime to change the configuration and behaviour of the MQ server in online mode. This document lists the set of MBeans exposed through JMX, and the attributes and operations within the MBean which the user may want to invoke. |
|
FioranoMQ C-RTL Guide |
This guide provides an introduction to FioranoMQ C RunTime library. Provides a summary of the various functions based on their usage and a detailed description of the APIs included in this library. Details out the steps involved in compiling and running CRTL sample applications. This guide also contains the sample programs illustrating the use of C-RTL for PubSub and PTP operations. |
|
FioranoMQ C++ RTL(Native )Guide |
This guide contains an overview of the C++RTL specific Data types and Constants, Error handling, Dot Net, API References, Sample Programs, and FAQ’s. This guide also describes usage of C++ Runtime for connecting to FioranoMQ server. The various sample programs illustrates the use of simple Publish-Subscribe and Point-To-Point operations |
|
FioranoMQ Native Csharp RTL Sample Application Guide |
This guide contains the sample programs illustrating the use of Native CSharp-RTL for PubSub and PTP operations. |
|
FioranoMQ API Documentation |
This guide describes of all the classes used in C# RTL. |
|
FioranoMQ FAQ’s |
This Online Help contains compilations of information about FioranoMQ, which are usually the result of certain questions constantly being asked. |
Submit and track your support issues at http://support.fiorano.com
This requires a valid login; please contact your sales representative for the Fiorano Support Portal Login.
If you have any questions and/or comments on FioranoMQ, please feel free to contact us at:
Fiorano Software Technologies Pvt. Ltd.
Our Website - http://www.fiorano.com
Evaluation Support – presales@fiorano.com
Check out our Developer Zone at Uwww.fiorano.com/devzone/dev_zone.php
United States:
+1-408-354-3210 (9 AM to 5 PM Pacific Time)
Asia Pacific:
+91 80 40170000 (9 AM to 5 PM India Standard Time)
Japan:
+81 3 5464 3874 (9 AM to 5 PM Japan Standard Time)
Europe and Middle East:
+44 (0) 1932 895005 (9 AM to 5 PM London Standard Time)
Copyright © 1999-2007, Fiorano Software Technologies Pvt Ltd and affiliates. All rights reserved.
Copyright © 2008-2009, Fiorano Software Pty Ltd. All rights reserved.
This software is the confidential and proprietary information of Fiorano Software ("Confidential Information"). You shall not disclose such Confidential Information and shall use it only in accordance with the terms of the license agreement enclosed with this product or entered into with Fiorano.