-
Bug
-
Resolution: Done
-
Major
-
2.5
-
None
NullPointerException can occur in findVirtualSynchronyGaps() because the Digest is not always set on the FlushHeader.
The below fix works, but not sure of it's implications.
private void onSuspect(Address address)
{
...
if (flushOkCompleted)
{ Digest digest = (Digest)down_prot.down(new Event(Event.GET_DIGEST)); // ************* Patch ************ FlushHeader fh = new FlushHeader(FlushHeader.FLUSH_COMPLETED, viewID); fh.addDigest(digest); m.putHeader(getName(),fh); // ************* Patch ************ // original // m.putHeader(getName(), new FlushHeader(FlushHeader.FLUSH_COMPLETED, viewID)); down_prot.down(new Event(Event.MSG, m)); if (log.isDebugEnabled()) log.debug(localAddress + " sent FLUSH_COMPLETED message to " + flushCoordinator); }...
}