

Release Notes JGroups 2.9
=========================


Version: $Id: ReleaseNotes-2.9.txt,v 1.2 2010/02/11 09:16:28 belaban Exp $
Author: Bela Ban

JGroups 2.9 is API-backwards compatible with previous versions (down to 2.2.7).

Below is a summary (with links to the detailed description) of the major new features.


New features
============



Notification when unicast or group request is done
--------------------------------------------------
[https://jira.jboss.org/jira/browse/JGRP-1030]

When using an async call which returns a future, get() would block until all responses had been received. Now, we
can register with the future to get notified when the results have been received.
Example:

NotifyingFuture<RspList> future=dispatcher.callRemoteMethodsWithFuture(...);
future.setListener(new FutureListener() {
    void futureDone(Future<T> future) {
         System.out.println("result is " + future.get());
    }
}
);

See the documentation for details.



Flag to bypass flow control
---------------------------
[https://jira.jboss.org/jira/browse/JGRP-1143]

The Message.NO_FC flag has been added. When set in a message, flow control (FC) will be bypassed. This can be useful
for example for synchronous RPCs. To set the flag:

   Message msg;
   msg.setFlag(Message.NO_FC);




Optimizations
=============


UNICAST
-------
[https://jira.jboss.org/jira/browse/JGRP-1122]

The big fat lock in down(), acquired by every thread, was eliminated and replaced with a lock-free algorithm.



Optimization of unicast requests
--------------------------------
[https://jira.jboss.org/jira/browse/JGRP-1123]

Invoking unicast RPCs has always been seen as a special case of a group request (1 target member). This was
changed, e.g. we don't need a hashmap for collecting responses from multiple members, but simply a single
response value. Uses less memory, and has less locking (= reduced contention).




Bug fixes
=========

Leak in TCPGOSSIP
-----------------
[https://jira.jboss.org/jira/browse/JGRP-1120]

On disconnect / reconnect, TCPGOSSIP could have a leak.




Manual
======

The manual is online at http://www.jgroups.org/manual/html/index.html



The complete list of features and bug fixes can be found at http://jira.jboss.com/jira/browse/JGRP.


Bela Ban, Kreuzlingen, Switzerland
Vladimir Blagojevic, Toronto, Canada
Richard Achmatowicz, Torono, Canada

February 2010

