[jgroups-users] JGroups 3.2.0.CR1 released

Bela Ban <[email protected]> Fri, 05 Oct 2012 13:02:05 +0200
Newsgroups gmane.comp.java.javagroups.general,gmane.comp.java.javagroups.devel
Message-ID <[email protected]>
FYI,

I just released 3.2.0CR1.

The main new feature is RELAY2 for cross-site clustering, 
internationalization and the ability to supress identical log messages 
for a while.
Plus, a few bug fixes.


I'm shooting for a final release in ca. 2 weeks.

Please let me know if you run into any issues, so I can fix them for final.
Cheers,



Release Notes JGroups 3.2.0
===========================


Author: Bela Ban

********************************************************************************
!! JGroups 3.2.0 is *not* API-backwards compatible with 2.x.x releases !!
!! JGroups 3.2.0 is API-backwards compatible with previous 3.x releases !!
********************************************************************************


Below is a summary (with links to the detailed description) of the major 
new features, optimizations and bug fixes.




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


RELAY2: multi-site clustering
-----------------------------
[https://issues.jboss.org/browse/JGRP-1433]
[https://issues.jboss.org/browse/JGRP-1401]
[https://issues.jboss.org/browse/JGRP-1521]
[https://issues.jboss.org/browse/JGRP-1519]

Provides clustering between multiple sites; successor to RELAY (which 
allowed for only 2 sites). RELAY2 is added to the
top of the stack and relays both multicast and unicast messages between 
sites (local clusters).
For documentation go to 
http://www.jgroups.org/manual-3.x/html/user-advanced.html#Relay2Advanced.


I8N logging
-----------
[https://issues.jboss.org/browse/JGRP-1475]

Use of ResourceBundles to internationalize certain warn and error 
messages. The JGroups/conf/jg-messages*.properties
files contain the translations. Currently, only German is supported, but 
support for any language can be added easily,
and without recompilation, e.g. by adding jg-messages_fr.properties (for 
French) to the classpath.


Suppress identical log warnings
-------------------------------
[https://issues.jboss.org/browse/JGRP-1518]

Sometimes we get a lot of log messages about the same problem, e.g. 
messages from a non-member, from a different cluster
or from a member running a different version of JGroups.
We can now suppress indentical warnings for a given period of time, so 
the logs don't get blown up beyond proportion.



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




Bug fixes
=========

GroupRequest: received and suspected is counted twice
-----------------------------------------------------
[https://issues.jboss.org/browse/JGRP-1505]

This could lead to premature termination of blocking RPCs.



NAKACK / NAKACK2: modification of headers leads to unneeded retransmissions
---------------------------------------------------------------------------
[https://issues.jboss.org/browse/JGRP-1502]

When copying messages on a retransmission, the headers are not copied. 
When NAKACK{2} therefore modifies a header
in place, we're changing the type of the message (normal message --> 
retransmit message). This is not incorrect, but
leads to unneeded retransmissions.


RSVP: incorrect updating of membership response list
----------------------------------------------------
[https://issues.jboss.org/browse/JGRP-1503]

This could lead to TimeoutExceptions when a new view was received before 
the call terminated.


MessageDispatcher allows sending of messages on a closed channel
----------------------------------------------------------------
[https://issues.jboss.org/browse/JGRP-1508]

This can lead to timeouts as a caller may block waiting for response 
values, which will never be received as the channel
is closed. Now an exception is thrown when we attempt to send a message 
via MessageDispatcher on a closed or unconnected
channel. This is the same behavior now as with channel.


NAKACK / NAKACK2: flushing queued messages on joining the cluster might 
lead to failed joins
--------------------------------------------------------------------------------------------
[https://issues.jboss.org/browse/JGRP-1522]

When a new member joins, it flushes messages it received before becoming 
a server (optimization introduced in 3.2 to
prevent retransmission). However, if any of the flushed messages sends a 
message in the same thread, this will hit
an unconnected channel (the channel isonly connected after the 
JChannel.connect() call returns), so an exception
will be thrown and JChannel.connect() fails.



Manual
======

The manual is at http://www.jgroups.org/manual-3.x/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, Toronto, Canada
Sanne Grinovero, Newcastle, Great Britain

Oct 2012

-- 
Bela Ban, JGroups lead (http://www.jgroups.org)

------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev