Repository indexing gaps handling
What does this MR do?
1
A simpler implementation of !9478 (merged): of each git push indexing, do a full indexing if the corresponding IndexStatus
is absent (previously it only index the recent changes). This means when IndexStatus
is present, it should already mean the index has already included all changes.
What we are trying to fix:
Event | Git content | What's being indexed |
---|---|---|
Indexing start | A -> B | |
New push C | A -> B -> C | C |
Index reaches project | A -> B -> C | noop |
Now this MR indexes everything if IndexStatus
is absent.
Event | Git content | What's being indexed |
---|---|---|
Indexing start | A -> B | |
New push C | A -> B -> C | A -> B -> C |
Index reaches project | A -> B -> C | noop |
2
To allow more efficient and robust repository indexing when indexing gap is present. Use IndexStatus
's last_commit
to catch up with the missing data, instead of reindexing everything.
What are the relevant issue numbers?
Closes #10712 (closed)
Does this MR meet the acceptance criteria?
-
Documentation created/updated via this MR -
Documentation reviewed by technical writer or follow-up review issue created -
Tests added for this feature/bug -
Conforms to the code review guidelines -
Conforms to the merge request performance guidelines -
Conforms to the style guides -
Conforms to the database guides -
EE specific content should be in the top level /ee
folder
Edited by 🤖 GitLab Bot 🤖