Issue #3952
closed
Using the ErrataRelatedModelSaver can result in creating incomplete content.
Status:
CLOSED - CURRENTRELEASE
Description
The insert of errata and all of its related tables need to be committed atomically. A fatal exception or worker crash between stages can result in storing an incomplete Errata.
- Sprint/Milestone set to Pulp 3 RPM MVP
- Blocked by Story #3953: ContentUnitSaver should support creating content with related models inside its transaction added
- Tracker changed from Issue to Story
- % Done set to 0
Converting to story per triage convo. Thanks for filing @jortel.
- Tracker changed from Story to Issue
- Severity set to 2. Medium
- Triaged set to No
The story work is happening in core, so I'm moving this to be a bugfix, which for pulp_rpm users it is.
- Status changed from NEW to ASSIGNED
- Assignee set to bmbouter
- Sprint set to Sprint 42
Adding to sprint as part of rpm sync work.
- Status changed from ASSIGNED to POST
- Triaged changed from No to Yes
- Status changed from POST to MODIFIED
- Status changed from MODIFIED to CLOSED - CURRENTRELEASE
Also available in: Atom
PDF
Use ContentUnitSaver _post_save hook
The ErrataRelatedModelSaver stage is instead repurposed as a subclass of the ContentUnitSaver stage. This is currently the best way for related objects to be saved within the same transaction.
Required PR: https://github.com/pulp/pulp/pull/3621
https://pulp.plan.io/issues/3952 closes #3952
asdf