An event that has already contributed to a notification should not contribute to another notification for the same subscription.
This needs to be done so we do not overwhelm the user.
This observer does the following task:-
1) It monitors all events and stores relevant data in a temporary table
2) It doesn't write the events straight away, it buffers them, so there is only one db write per request
3) It calculates and sees if there are subscriptions related to those events who need to be notified
4) If there are such cases, it schedules a adhoc task for the same
Original issue - MDL-46132