HomePhorge

Wrap basic diff/revision association in a transaction

Description

Wrap basic diff/revision association in a transaction

Summary:
This doesn't cover every case exhaustively (see comments) but should cover like
98% of the practical cases.

This makes one workflow modification: willWriteRevision() was previously
guaranteed to have a revisionID / revisionPHID and no longer is. I verified that
no field implementations depend on this behavior. Fields which depend on IDs
should be using didWriteRevision() instead.

Test Plan: Inserted a "throw" into the middle of the transactions and created
revisions; they didn't orphan. Created revisions normally, they worked
correctly.

Reviewers: btrahan, nh

Reviewed By: btrahan

CC: aran, epriestley

Maniphest Tasks: T605

Differential Revision: https://secure.phabricator.com/D1541

Details

Provenance
epriestleyAuthored on Feb 2 2012, 4:03 PM
themackabuPushed on Mar 25 2025, 8:07 PM
Parents
rPdc36317ea48f: Use 'ps <pid>' to test for process existence if posix is not available
Branches
Unknown
Tags
Unknown

Event Timeline