This is an tool for providing a straightforward framework for building clients that are resilient to failures in other components in a distributed system.
This is an experiment in building a reliability framework using the tools provided by Google's Guava, Guice, and codahale's metrics library.
- Provide more robust metrics, including high level success or failure.
- Allow
BasicMakrutCommand
to retry in the same thread, holding acquired resources until it finishes. - Provide a module which will make it easier for those not using Guice.
- Improve documentation, in particular providing a sample project.
- Deeper, more robust integration tests.
- Set up publishing.
- Allow for cross-cutting error detection and health checking.
- Profile current patterns and generate some baseline performance metrics.
- Provide a little easier tunability for advanced use cases.
- Provide
batch
capability. - Make using transactions from the factory easier.
- Currently very rough interface, could use a little work on the exact pattern for usage, ordering, etc. This is especially true for transactions.
- Better integration with Guice for nontrivial use cases.
- Better support for SQLState evaluation for retrying.
- Utilities, especially around
ResultSetHandler
.