Contents

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The following sections list new/changed features and resolved issues pertaining to this version:

Table of Contents

What's New

  • Enhancements at the database layer to support additional password policies:
    • An automated password expiration time which is configurable for user profiles (Excluding system users).
    • Prevent reuse of password using history of the last 3 passwords.
    • Account lockout after configurable invalid attempts.
  • Connection info about Admin Connections is properly formatted to include username, IP address and creation time.
  • Support to identify the type of client runtime connection (java/C/CPP/C#) from server.
  • JMX APIs to get the metadata of temporary destinations.
  • Addition of RESTful API powered by Jersey 2.x

  • CSharp RTL
    • Fiorano Client applications to fail fast:
      • Message Producers can now fail fast immediately if publishing messages to a Queue or a Topic is taking more time than the specified 'MessageProduceTimeout' value due to network latencies or heavy loads on the Broker.
      • Messages which are timed out will be stored locally in 'Client Side Persistence' storage of the producer application.
      • New send methods are introduced to configure timeout values for each message or setter method to set the timeout value at the producer level.

...

  • Web Console
    • New Angular-based Web Management Console for monitoring and administering FioranoMQ Server:
      • This tool is developed for an enriched user experience and better performance and it provides all functionalities currently provided by the existing GWT based web console as well as eStudio.
      • It can be accessed at: http://<IP_ADDRESS>:1780/angular
    • Provision to view CSP base directory (Absolute Path) in Web Console:
      Updated the MonitorConnections view to display information on where the cspCache exists for a particular client connection from server. The application can be a distributed one in which case there is a need to search where the cspCache got created from the whole system. By default, it gets created in the current directory and is represented by a dot.

...

  • Temporary Topic Tracing: Provides a way to programmatically determine the lifetime of a temporary topic such as when it was created, what username created it, client ID, and which IP the client was on. Additionally, EventManagers (for PTP and PubSub) would create events for the creation/deletion of temporary destinations.

What's Changed

  • The port on which RMI Registry exports MX4J RMIConnector stubs is set to 0 and stubs get exported at the same port to which the RMI Server port points to at runtime (default 1858).
  • Messages which are browsed from eStudio can be deleted one by one, and the related information is logged in the Server logs at the WARN level.
  • Upgraded log4j version to 2.17.1

  • HA: 'WriteToDisk' option for Queues in case of NON_PERSISTENT messages to support zero buffer size.

  • Replicated HA:
    • No need to switch the remote server to the PASSIVE state in case switching to ACTIVE_SYNC for the current server fails.
    • Size to be used for segmentation at the time of database syncup with passive server is made configurable (default 64kb).
    • SocketTimeout used for DB sync-up purpose need not require a server restart.

  • Java RTL:
    • Connection factory properties 'PublishWaitDuringCSPSyncup' and 'PublishWaitDuringSendPendingCSP' can configure NO_WAIT (-1) to prevent publisher thread slowdown.
    • USE_SYSTEM_PROPERTIES_FOR_SSL enabled by default for clients.

  • PTP:
    • 'jms_fiorano_preferred_message_groups' message property reserved for MGroup enabled Queues only.
    • On queues with the MessageGrouping feature enabled, if the message selector has the above message property, creating consumers is disallowed.

  • AdminService > threadDump operation includes thread synchronization information:
    • Making use of java/lang/management/ThreadMXBean API to dump the thread info for all live threads with stack trace and synchronization information.
    • Instead of saving the thread dump to server.log, thread information is dumped to a new file (with timestamp) every time this operation is invoked and return the file name back to the caller.

  • JMX API: Shutdown and restart broker operations specifies reason.

  • Admin API: Methods in MQAdminService and elsewhere must pass reason for shutting down or restarting broker for effective tracking and logging purposes.

  • Deprecated shutdownServer() and restartServer() Methods of MQAdminService.

  • Events: Additional info related to Client Connection is provided in JMX Notification Events. These events include producer/consumer creation, deletion etc.

  • Routes: Route-related thread names changed for debugging purposes; included information such as source destination name and target destination (if available at the time of route thread).

  • Repeaters: JMX API 'findDurSubscriptionInfo' invoked from web console displays durable subscription information instead of classname and hashcode.

Resolved Issues

  • Empty and NULL content JMS messages are handled gracefully.
  • Memory leak observed in file handles when a new Appender is added to the Logger and then removed.
  • Deadlock resulting from race condition between threads invoking Connection start and close methods.
  • Delayed messages getting stuck in Queue.
  • Queue performance degradation with multiple consumers even after connections are closed.
  • Receiver stopped consuming messages if DeliveryDelay is set.
  • While loading web console, Queue Beans disappear for non-default queues.
  • getRateOfMessagesInBound method on Topic MBean returns incorrect values.
  • NullPointerException while invoking restart operation in PTP and PubSub Service Manager Mbeans.
  • ConcurrentModificationException when restarting server.
  • AdminObjects logger not configurable
  • NullPointerException while browsing messages in durable subscriber and queues in Web Console.
  • ConfigFile parameter used for loading admin objects is placed incorrectly in Configs.cfg
  • NullPointerException while creating QueueConnection in server logs
  • NullPointerException while sending NON-Persistent Messages when EnableAutoRevalidation and AllowDurableConnections are set to true.
  • Invoking attributes of PrincipalManager service fails.
  • Topic does not exist exception while invoking PubSubManager MBean 'listActivePassiveSubscriberInfo' JMX Operation. JNDI presently allows 'binding' or 'looking up' a named Destination (Queue/Topic) using both the JNDI name as well as the Metadata name.

...

Adaptavist ThemeBuilder EngineAtlassian Confluence