Josh Elser created ACCUMULO-4670: ------------------------------------ Summary: RangeInputSplit drops sasl-enabled boolean Key: ACCUMULO-4670 URL: https://issues.apache.org/jira/browse/ACCUMULO-4670 Project: Accumulo Issue Type: Bug Components: mapreduce Reporter: Josh Elser Assignee: Josh Elser Priority: Critical Fix For: 1.7.4, 1.8.2, 2.0.0
When creating the RecordReader for a RangeInputSplit, the Split should encapsulate all of the context of the configuration to invoke that Split (e.g. instance info, connector info, scan iterators, etc). However, the "useSasl" option is not preserved inside of the RangeInputSplit which results in the split always using {{useSasl=false}}. This obviously breaks Kerberos installations: Offending code: https://github.com/apache/accumulo/blob/f81a8ec7410e789d11941351d5899b8894c6a322/core/src/main/java/org/apache/accumulo/core/client/mapreduce/RangeInputSplit.java#L362-L376 A workaround is to make sure that the Configuration present in the call to {{getRecordReader}} also has {{AccumuloInputFormat.setZooKeeperInstance}} invoked on it (push the ClientConfiguration into the Configuration which will result in it being merged with the details set on the input split). {code} if (useSasl) { AccumuloInputFormat.setZooKeeperInstance(jobConf, instanceName, zookeepers, useSasl); } {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029)