Skip to content

Latest commit

 

History

History
54 lines (43 loc) · 3.42 KB

README.md

File metadata and controls

54 lines (43 loc) · 3.42 KB

Build Status Coverage Status

This project materializes few dreams in connection to Java database development:

  • Eventual Atomicity for Cassandra
    • Scenario: transfer money between accounts, need two updates. If second update fails then first one must be compensated.
    • This was a primary goal of the entire project and gave project a name
    • We beleive that in most cirsumstances it is possible to avoid transactions and use compensations instead
      • Pros: No database deadlocks anymore
    • So not only Cassandra, but any JDBC source, too
  • History. All operations are tracked automatically
  • Binary States/Operations
    • No tables anymore to keep states and operations
    • Pure Java objects, Cassandra/JDBC as a data storage
    • Only two tables are needed - one for operations, one for states, so easy to create an maintain
  • Simplicity
    • Everything above must be very simple in usage and testing
    • Tests do not work with database directly

Usage

How to use this

Under the Hood

How it works: interactions of core classes/modules

Links

Miroservices