Commit Graph

156 Commits

Author SHA1 Message Date
Tomas Poch
ea184cb153 Retry annotation detected on implementing class
Fixes gh-88, closes gh-90
2017-12-05 08:19:09 -08:00
Gary Russell
a22ebe7514 Fix @Recover for Prototype Scoped Beans
Previously, if a bean annotated with `@Retryable` and `@Recover` was
scoped "prototype", the `@Recover` method in the first instance was
called instead of the method in the same instance as the failed `@Retryable`
method.

This was because the delegate cache in `AnnotationAwareRetryOperationsInterceptor`
was keyed only on the `Method` object.

Change the cache to cache at the `targetObject.method` level.

Also fixes `backoff` javadocs.

Fixes https://github.com/spring-projects/spring-retry/issues/93
2017-12-05 08:13:39 -08:00
qwazer
236d6206d7 Fix typo: maximimum -> maximum. 2017-12-06 00:29:12 +09:00
Dave Syer
f44b3ab814 Add jitpack.yml 2017-07-17 15:12:23 +01:00
Dave Syer
5b39aff0a5 Add travis yml 2017-07-17 15:08:38 +01:00
Dave Syer
51fccb15ed Use symlink for .m2 cache 2017-07-05 09:02:51 +01:00
Dave Syer
e0b7ae4810 Update pipeline for new version of concourse 2017-06-30 09:22:03 +01:00
Dave Syer
9c5c9aafd9 Revert to snapshots 2017-06-16 12:37:32 +01:00
Dave Syer
4fcf009056 Update for 1.2.1.RELEASE 2017-06-16 11:18:27 +01:00
Dave Syer
59a4fbd10d Add CI pipeline 2017-06-16 11:06:16 +01:00
Dave Syer
6f207c7a36 Make sure counts are accurate
The recovery and abort counts need to take into account that a
recovery might fail (e.g. if the @Recover method doesn't match
the @Retryable). Also the CIRCUIT_SHORT_COUNT has to be reset
in the statistics when the circuit is reset.
2017-06-12 11:41:26 +01:00
Dave Syer
c032143b5c Revert to snapshots 2017-01-13 13:34:33 -05:00
Dave Syer
bc78c5f2a8 Update to 1.2.0.RELEASE 2017-01-13 13:34:33 -05:00
Toshiaki Maki
a3c41b36be Fix wrong javadoc 2017-01-13 12:26:05 -05:00
Gary Russell
757f4ad546 GH-34: Resolve Placeholders in Expressions
Further enhancement to #34
2017-01-13 12:25:20 -05:00
Gary Russell
ba35d97222 Add Expression Support to @Retryable
Resolves GH-34
2016-11-30 20:17:43 -05:00
Dave Syer
8c8877deac Ensure retry context is saved to cache after it is updated
If the order is wrong (as it was), then a cache that serializes the
context will only ever contain the new value, and never be
updated.
2016-11-29 13:35:13 +00:00
Dave Syer
cc5263969d Add lint ignorer for java 8 2016-11-29 13:34:57 +00:00
Dave Syer
2b4c4ee37b Make Classifier Serializable 2016-11-21 11:25:14 +00:00
Dave Syer
9836651f4c Make BackOffContext Serializable 2016-11-16 10:07:35 +00:00
Dave Syer
50394f1bd0 Remove reference to nonexistent setter in README 2016-11-14 16:35:42 +00:00
Dave Syer
b6aadb0f13 Add Serializable to all retry contexts and policies
Any time they get cached in a more advanced cache than the default
map-based one, the serializability is useful (probably
mandatory for most distribued caches, even if that is probably
overkill).
2016-11-14 11:00:31 +00:00
Dave Syer
bdda948e1a Correct README with usage for setting retryable exceptions 2016-11-14 09:22:57 +00:00
Dave Syer
ab631ca500 Merge branch '1.1.x' 2016-11-14 09:14:59 +00:00
Dave Syer
e8074aa46b Revert to snapshots 2016-11-14 09:14:19 +00:00
Dave Syer
129c2eedca Update for 1.1.5 2016-11-14 09:13:27 +00:00
Dave Syer
b3e437b325 Exclude bridge methods from method invocation candidates 2016-10-28 09:45:50 +01:00
Dave Syer
7678887dcd Add mavn wrapper 2016-10-28 09:45:44 +01:00
Dave Syer
6973f65da0 Revert to snapshots 2016-10-14 10:07:20 +01:00
Dave Syer
3deab8c45a Update to 1.2.0.RC1 2016-10-14 10:07:15 +01:00
Gary Russell
3726eef3ba Support Raw Keys
If the key generator is guaranteed to provide a unique key, it can be used as
the cache key directly.

Add a setter to support this option.
2016-10-12 20:19:18 +01:00
Dave Syer
507c62bdae Clarify javadocs in ExponentialRandomBackOffPolicy 2016-10-12 12:44:14 +02:00
Dave Syer
da5334fdf4 Merge branch '1.1.x' 2016-10-12 12:28:15 +02:00
Gary Russell
5a4f4c6a6a GH-56: Add Retry All Except... Option
Resolves: #56
2016-10-12 12:27:45 +02:00
Dave Syer
106398d284 Merge branch '1.1.x' 2016-10-12 12:06:34 +02:00
Dave Syer
23f2a35958 Add a sleep to try and avoid sporadic fails 2016-10-12 12:06:04 +02:00
Dave Syer
62edc287ca Merge branch '1.1.x' 2016-09-26 10:56:12 +01:00
Dave Syer
b3c3f50e9e Add equals() implementation to custom Pointcut
Also added test case from SPR-14702 (which now passes).

Fixes gh-53.
2016-09-26 10:54:54 +01:00
Dave Syer
e6a83c0556 Polish 2016-09-26 10:10:52 +01:00
Gary Russell
2e293c33c3 Set RetryState Key to null if Necessary
See 9a95da2b70

If the key generator returns null, we need to set the key to null so the
state is not stored.
2016-09-26 10:05:31 +01:00
Dave Syer
18705bd905 Add convenience constructor to SimpleRetryPolicy 2016-09-26 10:04:08 +01:00
Dave Syer
48935e745e Clarify contract of context cache 2016-09-23 16:12:59 +01:00
Dave Syer
9a95da2b70 If retry state key is null, context is not cached
If the retry state has a null key it could be an error, but there
are real work scenarios where that just means "no information"
and the safest thing to do in that case is to simply not cache the
retry context (so the retry callback is executed "naturally" and
the exception bubbles up).

See comment in gh-49 about Spring AMQP use case
2016-09-23 16:08:56 +01:00
Dave Syer
c9a8361a51 Revert to snapshots 2016-09-20 14:18:07 +01:00
Dave Syer
38829666db Update for 1.1.4 2016-09-20 14:17:02 +01:00
Dave Syer
6599311bb9 Merge branch '1.1.x'
Conflicts:
	pom.xml
2016-09-20 14:16:08 +01:00
Gary Russell
ce3621ea1d Find @Retryable on Target Class
fixes #32
2016-09-20 14:13:58 +01:00
Gary Russell
660c01adc9 GH-19 SimpleRetryPolicy MaxAttempts JavaDocs
See GH-19
2016-09-20 14:13:53 +01:00
Dave Syer
54f667f5be Chasing test coverage 2016-08-24 15:57:53 +01:00
Dave Syer
7aedbefc48 Extract constants and fix spelling error in their value 2016-08-24 15:07:04 +01:00