Thanks for the review. Updated patch attached.
Add the configs to mapred-default.xml as documentation?
LIST_STATUS_NUM_THREADS_DEFAULT -> DEFAULT_LIST_STATUS_NUM_THREADS
oldListStatus() -> singleThreadedListStatus()
Can you add a bit of javadoc to all the new classes and methods in LocatedFileStatusFetcher? Also to the main LocatedFileStatusFetcher class itself.
Synchronization needed for ProcessInitialInputPathResult.addError()?
Not required. It's local to the specific instance.
Can you group the callable, result and call-back for each type of operation together in two classes?
Moved the Result into the callable. The CallbackHandler is non static - so moving that requires a fair amount of change, and additional parameters. Have left that as is.
The 'result' variable doesn't need to be a class field of ProcessInputDirCallable. Similarly the one in ProcessInitialInputPathCallable.
Made this local to the method.
Also fixed a typo in one of the log messages