Geo: backfill and log cursor attempt to sync wikis unconditionally
Summary
When backfilling projects, Geo assumes that all projects have a wiki. In fact, this is not true.
Steps to reproduce
- Create a project without a wiki on the primary
- Wait for Geo sync via the log cursor, note that
resync_wiki: true
in the Geo tracking database on the secondary - Remove the
Geo::ProjectRegistry
entry from the Geo tracking database on the secondary - Wait for backfill to recreate the entry, note that
resync_wiki: true
In both cases, resync_wiki
should be false.
What is the current bug behavior?
Lots of NotFound
exceptions on the primary, failed wiki syncs on the secondary
What is the expected correct behavior?
The secondary should detect from the database that no wiki is going to be present, and not bother trying to sync it.
Edited by Nick Thomas