Wednesday, February 24, 2016

JGroups 3.6.8 released

FYI, 3.6.8.Final has been released.

Not a big release; it contains mostly optimizations and a nice probe improvement. The main issues are listed below.


New features

Probe improvements

- Proper discarding of messages from a different cluster with '-cluster' option.
- Less information per cluster member; only the requested information is returned
- Detailed information about RPCs (number of sync, async RPCs, plus timings)


DONT_BUNDLE and OOB: messages are not removed from batch when execution fails

- Messages are not removed from batch when execution fails
- Rejections are not counted to num_rejected_msgs

COMPRESS: removed 1 byte[] buff copy

An unneeded copy of the compressed payload was created when sending and compressing a message. The fix should reduce
memory allocation pressure quite a bit.

RpcDispatcher: don't copy the first anycast

When sending an anycast to 3 destinations, JGroups sends a copy of the original message to all 3. However, the first
doesn't need to be copied (less memory allocation pressure). For an anycast to a single destination, no copy is
needed, either.

Compaction of in-memory size

- Reduced size of Rsp (used in every RPC) from 32 -> 24 bytes
- Request/UnicastRequest/GroupRequest: reduced size

RequestCorrelator.done() is slow

Used by RpcDispatcher. Fixed by eliminating the linear search done previously.

Bug fixes

FILE_PING: consider special characters in file names

Names like "A/web-cluster" would fail on Windows as the slash char ('/') was treated as demarcation char in some clouds.


The manual is at

The complete list of features and bug fixes can be found at

Bela Ban, Kreuzlingen, Switzerland
Feb 2016