Now we have these codes in TableOutputFormat https://github.com/apache/hbase/blob/2130e5410f63fead548d14c11d3b439e0d98f603/hbase-mapreduce/src/main/java/org/apache/hadoop/hbase/mapreduce/TableOutputFormat.java#L217
if (serverClass != null) { this.conf.set(HConstants.REGION_SERVER_IMPL, serverImpl); } It was added in HBASE-2221, when we wanted to implement MR based table copy. Does anyone still remember the reason why we wanted to specify region server class and implementation when copying a table? It does not make sense to me... Thanks.