In my app I have set observers for childAdded, childDeleted and childModified on the Firebase database nodes of interest to keep track of them and modify my CoreData device database accordingly. I just realised that if a childDeleted or childModified happens when a device is not online, it won't get notified of those events when it goes online again. As it is the normal expected behaviour as understood, I thought of a workaround as so: when I trigger deletion an entry on Firebase node, I will create an entry of the respective "deleted" node. So a childAdded event will be triggered when device gets back online and perform the logic that is now performed by the childDeleted observer. This way I won't observe any childDeleted events.
So my question is: am I misusing Firebase observers ,and childDeleted should be communicated anyway when the device gets back online, or this kind of situation is actually the way it is supposed to work? What kind of solutions did you implement in this situation?