Knowing When EventStoreCatchUpSubscription is "Live"

Taking the latest dispatcher gist for a spin, everything’s working great.

However, I would like to take advantage of any batching capabilities my read model storage may have. So I want to know when the subscription has caught up. I thought of ReadAllEventsBackwards to get the Position of the last event right before we start, but for high volume streams that might not work. Is there any other way?

We have discussed adding an additional callback for when the catch up subscription begins processing live events … but I don’t think it has been added yet.

Will update this thread once it has been implemented.

For now your read backwards workaround should give you a rough idea, though obviously may exclude a few new events that appeared whilst catching up.

Just checked up on this, the change exists in the “http” branch if you want to take a look.

https://github.com/EventStore/EventStore/blob/http/src/EventStore/EventStore.ClientAPI/EventStoreCatchUpSubscription.cs

CatchUpSubscription now takes an extra argument:

Action liveProcessingStarted

Should be merged into dev branch with some other changes next week.