Hmm, is this right? Why would we look for getCounter(String, String) when the invocation will be done with a single Enum? Wouldn't this blow up on invocation? Also, do we need to catch this exception? If it's v2, TaskAttemptContext better be there.