-
Bug
-
Resolution: Done
-
Blocker
-
None
-
None
-
False
-
-
False
-
-
The following message never reaches the Infinispan code:
2023-06-27 18:30:26,360 TRACE (jgroups-7,AsyncBackupTest-NodeA) [org.jgroups.protocols.UDP] AsyncBackupTest-NodeA: received [AsyncBackupTest-NodeB to AsyncBackupTest-NodeA, 6 bytes, flags=OOB|NO_TOTAL_ORDER|NO_RELAY], headers are RequestCorrelator: corr_id=0, type=REQ, req_id=1, rsp_expected=true, UNICAST3: DATA, seqno=3, TP: [cluster=LON-1-org.infinispan.xsite.AsyncBackupTest[LON=OPTIMISTIC_TX_RR, NYC=OPTIMISTIC_TX_RC]] 2023-06-27 18:30:26,360 TRACE (jgroups-7,AsyncBackupTest-NodeA) [org.jgroups.protocols.UNICAST3] AsyncBackupTest-NodeA <-- AsyncBackupTest-NodeB: DATA(#3, conn_id=0) 2023-06-27 18:30:26,360 TRACE (jgroups-7,AsyncBackupTest-NodeA) [org.jgroups.protocols.UNICAST3] AsyncBackupTest-NodeA: delivering AsyncBackupTest-NodeB#3 2023-06-27 18:30:26,360 TRACE (jgroups-7,AsyncBackupTest-NodeA) [org.jgroups.protocols.UFC] AsyncBackupTest-NodeB used 6 credits, 3999994 remaining
Looking at the source code, the message goes through the block which never invokes deliver(). The message is lost and never reaches the application.
if(hdr == null) { <-- this is true as the log shows no RELAY2 header
TopoHeader topo_hdr=msg.getHeader(TOPO_ID);
if(topo_hdr != null) { <-- false
handleTopo(topo_hdr, sender, msg, false);
return null;
}
<-- missing deliver???
}
else {
if(handleAdminMessage(hdr))
return null;
if(dest != null)
handleMessage(hdr, msg);
else
deliver(dest, sender, msg);
}
return null;