Hey,
I’m wondering if somebody could help me out with a problem I’m a bit stuck with.
I’m trying to replay the entire event stream for an instance of GES that I have running on Mono, on an AWS EC2 instance.
I do so using the following code. The Connection here is initialised using the admin user credentials.
public IEnumerable GetEventsFrom(DateTime from)
{
var slice = Connection.ReadAllEventsForward(Position.Start, int.MaxValue, false);
return slice.Events.Where(e => !e.OriginalStreamId.StartsWith("$")).Select(e => GetEvent(e.Event)).Where(e => e.TimeStamp >= from);
}
I’m omitting GetEvent, as that just does a conversion from the GES event to the event type used in our domain.
Btw, I’m also wondering, is there a better way of reading the whole stream? Reading from the start brings back events that don’t apply to our actual domain (I guess used by GES for some internal house keeping or something?), which is why I’m using the little dollar based exclusion there.
Anyway, this approach works just fine when I’m running in my dev environment with the SingleNode exe running.
However, when I try it when connecting to the EC2 instance, I get a RetriesLimitReachedException:
Item Operation ReadAllEventsForwardOperation ({660595dd-7f10-4fb6-b08e-3cce8b6418e5}): Position: 0/0, MaxCount: 2147483647, ResolveLinkTos: False, RequireMaster: True, retry count: 10, created: 10:59:15.818, last updated: 10:59:55.190 reached retries limit : 10
Note that it is definitely not an issue with opening the 1113 port for the EC2 security group, as that’s open, and ReadStreamEventsForward seems to be fine.
Any ideas on this one?
Cheers,
Chris