{"record":{"id":"401c6c1f386d390e","repo":"apache/hadoop","slug":"rpc-client-doesn-t-support-sasl","errorCode":null,"errorMessage":"RPC client doesn't support SASL ","messagePattern":"RPC client doesn't support SASL ","errorType":"exception","errorClass":"SaslException","httpStatus":null,"severity":"error","filePath":"hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/SaslRpcClient.java","lineNumber":447,"sourceCode":"            throw new SaslException(\"Server sent unsolicited challenge\");\n          }\n          byte[] responseToken = saslEvaluateToken(saslMessage, false);\n          response = createSaslReply(SaslState.RESPONSE, responseToken);\n          break;\n        }\n        case SUCCESS: {\n          // simple server sends immediate success to a SASL client for\n          // switch to simple\n          if (saslClient == null) {\n            authMethod = AuthMethod.SIMPLE;\n          } else {\n            saslEvaluateToken(saslMessage, true);\n          }\n          done = true;\n          break;\n        }\n        default: {\n          throw new SaslException(\n              \"RPC client doesn't support SASL \" + saslMessage.getState());\n        }\n      }\n      if (response != null) {\n        sendSaslMessage(ipcStreams.out, response.build());\n      }\n    } while (!done);\n    return authMethod;\n  }\n\n  private void sendSaslMessage(OutputStream out, RpcSaslProto message)\n      throws IOException {\n    if (LOG.isDebugEnabled()) {\n      LOG.debug(\"Sending sasl message \"+message);\n    }\n    ResponseBuffer buf = new ResponseBuffer();\n    saslHeader.writeDelimitedTo(buf);\n    message.writeDelimitedTo(buf);","sourceCodeStart":429,"sourceCodeEnd":465,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/SaslRpcClient.java#L429-L465","documentation":"Error \"RPC client doesn't support SASL \" thrown in apache/hadoop.","triggerScenarios":"Thrown at hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/SaslRpcClient.java:447 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use an RPC client version that supports SASL, or disable SASL (set security to simple) on both ends consistently.","Upgrade the client library to a Hadoop version with SASL support.","Verify the negotiated quality-of-protection is supported by the client."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2add9630210752f88ceb1bb74eb65e37bf41da8e","analyzedAt":"2026-08-22T19:55:07.957Z","schemaVersion":2},"datasetVersion":"2026-08-22T20:17:22.307Z"}