Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Async subscriptions for PostgreSQL event store #128

Draft
wants to merge 6 commits into
base: main
Choose a base branch
from

Commits on Nov 20, 2024

  1. Adjusted subscriptions table to contain partition. Removed redundant …

    …module and tenant column
    oskardudycz committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    6d70887 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    635cf44 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    90faf1e View commit details
    Browse the repository at this point in the history
  4. Refactored reading messages in batch implementation to handle global …

    …position from event metadata instead of count
    oskardudycz committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    4a44a23 View commit details
    Browse the repository at this point in the history
  5. Added PostgreSQL event store consumer

    Consumer will be responsible for pulling messages and feeding it to subscriptions.
    
    A single consumer can be feeding multiple subscriptions. Thanks to that user can choose the subscriptions isolation. Havina a single consumer for multiple subscriptions makes it less chatty, as there'll be only a single process pulling. Multiple consumers can be spin up to scale subscriptions separately or handle rebuilds.
    
    Now, the same PostgreSQLSubscription can be feeded from other sources than event store, but storing checkpointing in the same place, and handling projections (so e.g. connecting Kafka, or logical replication instead of the message pulling).
    
    Message Puller was taken out to a dedicated file.
    oskardudycz committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    792e2d9 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    69d9c95 View commit details
    Browse the repository at this point in the history