API Reference Carbonite v0.1.0
Modules
Carbonite implements the Change-Data-Capture pattern on top of PostgreSQL using database triggers. It keeps a central changes table where all mutations of participating tables are recorded. Each changes row is associated to a single row in the transactions table using PostgreSQL's internal transaction id as the foreign key. This leads to the following interesting properties
A Carbonite.Change records a mutation on a database table.
Functions to setup Carbonite transaction logs in your migrations.
Implements the outbox pattern to process (and evict) recorded transactions in the database, in order of insertion.
A Carbonite.Transaction is the binding link between change records of tables.
A Carbonite.Trigger stores per table configuration for the change capture trigger.