Meilisync loses event when both create and update occur for the same primary key in an interval
rishabhc32 opened this issue · 2 comments
rishabhc32 commented
If I have an interval of, let's suppose, 10 seconds and insert size of 1000 documents, and within that interval, a create event is first received followed by an update event for the same primary key, the current implementation of Meilisync's event buffer leads to the create event being overwritten by the update event.
Lines 10 to 13 in 052c4de
self._events[sync][pk] = event
here the event will get overwritten.
A potential solution could involve modifying the event handling logic to append events rather than overwrite them, for instance:
self._events[sync][pk].append(event)
Or we could just do:
self._events[sync].append(event)