[hadoop]MAPREDUCE-5117 Report

1. Symptom

Early termination

With security enabled HS delegation token renewer fails

1.1 Severity


1.2 Was there exception thrown?


java.lang.IllegalArgumentException: not a proxy instance

1.2.1 Were there multiple exceptions?


1.3 Scope of the failure

Users who enabled security

2. How to reproduce this failure

2.0 Version


2.1 Configuration

1 HS

2.2 Reproduction procedure

1. Enable security (config change)

2. Client request a HS token (feature start)

2.2.1 Timing order


2.2.2 Events order externally controllable?


2.3 Can the logs tell how to reproduce the failure?


2.4 How many machines needed?

2 (HS node+MRClient node)

3. Diagnosis procedure

3.1 Detailed Symptom (where you start)

MRClient throws exception when it is requesting a HS token.

3.2 Backward inference

The wrong implementation of MRClientProtocol makes the function call stopHistoryProxy

failed and throws exception.

4. Root cause

MRClientProtocol is not correctly implemented. MR will not regard it as a proxy in the JobClient.

4.1 Category:

The error handling is wrong:

MRClientProtocol histProxy = instantiateHistoryProxy(conf,
try {
     RenewDelegationTokenRequest request = Records
return histProxy.renewDelegationToken(request).getNextExpirationTime();
finally {

  --- the finally clause, once triggered, will expose the failure...