Comments (7)
released in 0.3.0
from diehard.
Thanks so much for implementing this!
Quick q re: the signature, the readme suggests the :fallback
fn returns [exception value] arguments
, but I seem to be getting [nil exception]
instead (aka the exception
is actually the second argument and the first argument always returns nil
).
The readme states the return argument other than exception
is meant to be the value
of the previous attempt - but wouldn't this always return nil
given we'd never hit the fallback criteria if the previous attempt returned a value rather than an exception?
from diehard.
Good catch, @dhruvbhatia . That's a mistake in documentation. The first argument is return value, which is consistent with retry-if
.
Because you can configure retry criteria that not only will exception cause retry, but also some return value that matches your criteria.
from diehard.
Thanks for the quick response - that makes sense.
from diehard.
Hey,
the fallback code uses when-let (:fallback
, which means fallback falsy values, such as nil
or false
, can't be used (they'll be silently ignored).
This is either a bug, or something that could be documented. What do you think?
from diehard.
@vendethiel it sounds more like a bug. We should fix it by wrapping a (some?)
from diehard.
Fixed in a3fa30f
from diehard.
Related Issues (20)
- `deflistener` does not exist HOT 2
- Update to latest failsafe with new features HOT 2
- Failsafe's Timeout usage HOT 3
- Document types and arity of circuit breaker options HOT 1
- :backoff-ms documentation does not match failsafe docs HOT 1
- question on future(...) contruct use HOT 1
- callback on-failure
- Get rid of reflection warnings HOT 1
- Allow retry on Throwable HOT 6
- upgrade to 0.9.3 produces Execution error, 'Unable to resolve spec: ...' HOT 5
- Cannot use listeners with predefined policy HOT 2
- 0.10.1 regression: max-retries not respected HOT 3
- Thank you 🤗 and link to a similar tool
- Use of getFailure is deprecated in FailSafe HOT 2
- cljdoc not accessible since 0.11.4 HOT 2
- Instant cannot be cast to Duration HOT 3
- `Fallback` doesn't support `.handleResult` HOT 6
- NullPointerException when combining with-retry and with-timeout HOT 1
- Cljdoc build failure HOT 4
- Circuit breaker not opening HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from diehard.