MassTransit.EventStoreIntegration icon indicating copy to clipboard operation
MassTransit.EventStoreIntegration copied to clipboard

Migrate to Event Store 20.6.0

Open jasonycw opened this issue 4 years ago • 5 comments

Event Store has been updated to 20.6.0 now https://eventstore.com/blog/event-store-20.6.0-release/

And they start promoting the new gRPC client, EventStore.Client.Grpc.Streams, and start disable TCP be default.

Will this package be updated to the new gRPC packages?

jasonycw avatar Aug 24 '20 09:08 jasonycw

Working on it. I have to create some abstractions so I can support both TCP and gRPC.

alexeyzimarev avatar Aug 24 '20 09:08 alexeyzimarev

@alexeyzimarev thanks for the super quick reply, looking forward to it.

We have migrated to Event Store 20.6.0 and the new EventStore.Client.Grpc.Streams recently and are looking for a good solution for Event Store state machine lately. I wonder are there any packages you aware of that are also doing something similar for us to evaluate?

jasonycw avatar Aug 24 '20 09:08 jasonycw

Basically, I already implemented all the existing features with both TCP and gRPC on 20.6. Then, I started to work on an EventStoreDB rider, both as a consumer and as a producer. Producers are easier, consumers are harder (a bit) because ideally, I'd need to support both catch-up subscriptions and persistent subscriptions. And, for catch-up subscriptions, I'd need to support client-side offset storage too.

alexeyzimarev avatar Aug 24 '20 11:08 alexeyzimarev

@alexeyzimarev A similar approach to this may be used to store information for the catch-up subscription. https://github.com/eventflow/EventFlow/pull/797 See: EventStoreCheckpointStore.cs They are storing the stream position for the application inside of EventStore using a "checkpoint" stream per app.

iam10k avatar Oct 28 '20 04:10 iam10k

I have done it myself many times. The issue with that is the checkpoint store in ESDB introduces writes and it gets especially nasty when standard projections are enabled. All those writes are useless, they increase the scavenge load and so on.

alexeyzimarev avatar Oct 28 '20 09:10 alexeyzimarev