Page MenuHomePhabricator

Correct the flow of edit authority when sending messages to HarbormasterBuild objects

Authored by epriestley on Jul 15 2021, 6:02 PM.
Referenced Files
Unknown Object (File)
Tue, Mar 28, 8:29 AM
Unknown Object (File)
Mon, Mar 27, 5:33 AM
Unknown Object (File)
Feb 28 2023, 3:52 PM
Unknown Object (File)
Feb 20 2023, 4:02 AM
Unknown Object (File)
Feb 14 2023, 5:32 AM
Unknown Object (File)
Feb 12 2023, 11:48 AM
Unknown Object (File)
Feb 9 2023, 6:38 PM
Unknown Object (File)
Feb 3 2023, 8:54 PM
Restricted Owners Package



Ref T13072. Currently, Harbormaster builds react to messages by applying a transaction inline (which can race) that has no real effect.

Later, the BuildEngine picks up the mesasge and applies a real effect, but this isn't transactional.

This is backwards, and makes it more difficult to transition to ModularTransaction and EditEngine. The desired workflow is:

  • sending a message just writes to the message table (and queues a worker to process the message);
  • the BuildEngine processes the message and applies effects in a transactional way.

Force this into at least roughly the right sequence of behaviors. This paves the way for porting to ModularTransaction, which should allow further cleanup.

Test Plan

Paused, resumed, aborted, and restarted a build. Ran BuildWorkers to process the commands, saw builds update appropriately.

Diff Detail

rP Phabricator
Lint Not Applicable
Tests Not Applicable

Event Timeline

Owners added a subscriber: Restricted Owners Package.Jul 15 2021, 6:02 PM
This revision was not accepted when it landed; it landed in state Needs Review.Jul 21 2021, 9:24 PM
This revision was automatically updated to reflect the committed changes.