Do not fail GitHub import on a NoMethodError
What does this MR do and why?
An import should be resilient to any worker that imports data hitting an error (of any kind) and we shouldn't fail the import within our non-stage workers.
Previously, when a GitHub import worker (one that saves the data) would encounter a NoMethodError
once it would fail the import.
This change switches the handling of a NoMethodError
to track the
error as normal. It is not re-raised because there's no point in the
worker retrying.
The motivation for this change was a particular situation where a
NoMethodError
was being raised due to calling a method on a nil
.
This "requirement" for workers that import data to not fail the import on an error has been captured here #430051 (comment 1689521119).
https://gitlab.com/gitlab-org/manage/import-and-integrate/discussions/-/issues/61#note_1689481972
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.