Scavenging and read all positions

I’m interested in periodically getting the latest events written to the store. ReadAllEventsForwardAsync seems to be a good candidate to be called from time to time.
I have to store the latest slice’s NextPosition between the calls to know where to start the next read from.

Can I

  1. save a position (EventStore.ClientAPI.Position)
  2. write x number of events
  3. scavenge (which potentially deleted some old streams)

and expect that afterwards if I call ReadAllEventsForwardAsync(saved_position), I’d get the events starting with the ones saved in point 2?

In other words: does scavenging mess up with the positions?


The positions live through scavenge, this is exactly how catchup
subscription works btw