I think when the javadoc talks about multiple versions of Hadoop, it means the registered exception class may not be in the classpath for some version of hadoop
For. eg. in JavaActionExecutor.registorError, there is
This class may not exist in some version of hadoop and it needs to be handled. That is what the javadoc is pointing to.
I believe the mapping of the className to the errorInfo is unique. As, it doesn't make sense to have something like
Even if there are multiple implementations of same class, the class name would be different. So, no need of using Set of error infos.
I would prefer that we go back to the same earlier approach that was working before even though it requires exception to be registered in correct order.