Skip to content

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.

Edited by Luke Duncalfe

Merge request reports