A non-transitory machine readable medium storing a program for execution by at least one processing unit for providing data regarding events that is stored in a data store to a set of consumers, the program comprising sets of instructions for:
- at the event server:
- providing, to a first instance of a particular consumer that comprises a plurality of instances, a stream of data regarding a first event that is stored in a set of one or more partitions of the data store assigned to the first instance;
- receiving, from the first instance, notification that the first instance failed to process the stream of data;
- unassigning the set of partitions to the first instance;
- assigning the set of partitions to a second instance of the particular consumer;
- and
- providing, to the second instance, the stream of data regarding the first event.