Details
-
Bug
-
Resolution: Done
-
Major
-
3.6.6
-
None
Description
The SASL merge authentication fails because the merge leader is asked to merge with itself.
3741 [TRACE] SASL: B: received CHALLENGE from A
3744 [TRACE] SASL: B: sending RESPONSE to A
3744 [TRACE] SASL: A: received RESPONSE from B
3745 [TRACE] SASL: A: sending CHALLENGE to B
3745 [DEBUG] SASL: Authentication successful for user
3746 [TRACE] SASL: B: received CHALLENGE from A
3746 [TRACE] SASL: B: authentication complete from A
A: [A|1] (2) [A, B]
B: [A|1] (2) [A, B]
A: [A|10] (1) [A]
B: [B|10] (1) [B]
3823 [DEBUG] GMS: B: I will be the merge leader. Starting the merge task. Views:
3825 [DEBUG] GMS: B: merge task B::1 started with 2 participants
3825 [TRACE] GMS: B: sending MERGE_REQ to [B, A]
3826 [TRACE] SASL: B: received CHALLENGE from B
3829 [TRACE] GMS: B: queue is suspended; request LEAVE(B, false) is discarded
3827 [WARN] SASL: failed to validate CHALLENGE from B, token
javax.security.sasl.SaslException: DIGEST-MD5: digest response format violation. Missing username.
at com.sun.security.sasl.digest.DigestMD5Server.validateClientResponse(DigestMD5Server.java:417) ~[?:1.7.0_85]
at com.sun.security.sasl.digest.DigestMD5Server.evaluateResponse(DigestMD5Server.java:244) ~[?:1.7.0_85]
at org.jgroups.auth.sasl.SaslServerContext.nextMessage(SaslServerContext.java:73) ~[classes/:?]
at org.jgroups.protocols.SASL.up(SASL.java:239) [classes/:?]
at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:234) [classes/:?]
at org.jgroups.protocols.UNICAST3.deliverMessage(UNICAST3.java:1064) [classes/:?]
at org.jgroups.protocols.UNICAST3.handleDataReceivedFromSelf(UNICAST3.java:810) [classes/:?]
at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:424) [classes/:?]
at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:652) [classes/:?]
at org.jgroups.protocols.MERGE3.up(MERGE3.java:285) [classes/:?]
at org.jgroups.protocols.Discovery.up(Discovery.java:295) [classes/:?]
at org.jgroups.protocols.TP.passMessageUp(TP.java:1577) [classes/:?]
at org.jgroups.protocols.TP$3.run(TP.java:1511) [classes/:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [?:1.7.0_85]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [?:1.7.0_85]
at java.lang.Thread.run(Thread.java:745) [?:1.7.0_85]