Sync requirement and requirement issues state
What does this MR do and why?
This is part of state IIB of migrating requirements to work items(issues of type requirement).
Syncs state between issues(of type requirement) and requirements from both ends. Also makes sure no desync happens and if it happens logs an error.
- On
UpdateRequirementService
it uses a pseudo transaction to avoid desync already implemented on !64929 (merged) -
Issues::UpdateService
andIssues::CloseService
it uses a regular ActiveRecord transaction to avoid desync
related to #337190 (closed)
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.
Edited by Michael Kozono