We are upgrading our spring 1.3.4 properly handles a method public List<T> myMethod() where the recovery is defined as public List<T> recoverMyMethod(Throwable t) but after #328 using version 2.0.4 it would seem that no longer works.
The offending code is what was added in that bug !methodArgType.equals(failingMethodArgType) because the two Ts are not equal as far as the reflection is concerned since they are on different methods; in theory they could be different but for the purpose of @Retryable/@recover they won't be.
We are upgrading our spring 1.3.4 properly handles a method
public List<T> myMethod()where the recovery is defined aspublic List<T> recoverMyMethod(Throwable t)but after #328 using version 2.0.4 it would seem that no longer works.The offending code is what was added in that bug
!methodArgType.equals(failingMethodArgType)because the twoTs are not equal as far as the reflection is concerned since they are on different methods; in theory they could be different but for the purpose of @Retryable/@recover they won't be.