It deals with the database engine used for storing the messages. In order to maintain the integrity of the data in the midst of multiple source update activity, there are certain resources that must be used in a single-thread manner. When two requests for that resource hit at exactly the same time, one is chosen to be the "loser" and is dropped. When you get that message, your request happened to be the "loser". There are times when you don't get the notification because someone else "lost".
Actually, from a geek perspective this is interesting because it happens when there is a "standoff". Your request locks some resource and needs to lock another. Someone else has that resource locked and needs the one that you have locked. The system can't just make one of you wait, so it flips a coin and shoots the loser (figuratively, that is). Without the standoff situation, it just makes you wait.