I understand that some times MongoDB secondary data becomes stale at which point, we need to perform an init sync from the Primary instance.
But sometimes we see error logs that look like this:
2022-07-22T21:24:20.065+0000 I REPL [rsBackgroundSync] Starting rollback due to OplogStartMissing: Our last optime fetched: { ts: Timestamp(1658512549, 30), t: 57 }. source's GTE: { ts: Timestamp(1658513748, 2), t: 88 }
How is the above error message different from:
2022-08-01T02:30:21.915+0000 I REPL [replication-0] We are too stale to use xyz as a sync source. Blacklisting this sync source because our last fetched timestamp: Timestamp(1659314292, 1) is before their earliest timestamp: Timestamp(1659320029, 301) for 1min until: 2022-08-01T02:31:21.915+0000
I am trying to understand the difference between both of the above.