1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-11 01:12:41 +01:00
phorge-phorge/src/applications
epriestley 91e5ca0ee2 Merge the DrydockResource workers into a single worker
Summary:
Ref T9252. Currently, Drydock Leases and Resources have several workers:

  - Resources: ResourceWorker, ResourceUpdateWorker, ResourceDestroyWorker
  - Leases: AllocatorWorker, LeaseWorker, LeaseUpdateWorker, LeaseDestroyWorker

This is kind of a lot of stuff, and it creates some problems.

In particular, leases and resources in early lifecycle phases (pending/allocating/acquiring) can't process commands yet, because that code is only in the "UpdateWorker" classes. If they aren't able to move forward because of a bug, they also can't be released because they can't react to the release command until later in their lifecycle. This creates a soft hang where I have to go wipe stuff out of the database since there's no other way to get rid of it.

Instead, I want leases and resources to be releasable from any (pre-release / pre-destroy) phase of their lifecycle. To support this, all the workers before the "UpdateWorker" need to be able to process commands.

A second, similar issue is that logging and exception handling behaviors are underpowered right now. Elsewhere I began improving this, but ran into issues where all of the workers needed to share very similar exception code. Merging them will make this future change simpler.

This diff fixes this for resources: it merges the Worker, UpdateWorker and DestroyWorker logic into UpdateWorker and throws away the other two workers.

Test Plan: Nothing substantive yet, see next diff. I'll do the same thing for Leases, then test both more thoroughly.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T9252

Differential Revision: https://secure.phabricator.com/D14201
2015-10-01 08:10:40 -07:00
..
almanac Provide a generic "Datasource" StandardCustomField 2015-09-21 04:41:52 -07:00
aphlict Return $this from setter methods 2015-07-06 22:53:43 +10:00
arcanist/conduit Remove remaining arcanist project code 2015-07-08 19:37:28 +10:00
audit Load audit requests when querying audits 2015-09-25 10:43:17 -07:00
auth Add bin/auth unlimit and clean up a TODO 2015-09-14 07:03:39 -07:00
badges Check that the viewer can actually create badges before letting them create badges 2015-09-24 15:34:09 -07:00
base Allow Controllers to return a wider range of "response-like" objects 2015-09-01 15:52:52 -07:00
cache Add dialog to purge opcode/data caches 2015-09-10 14:19:02 -07:00
calendar Calendar list objects that are ghost events should link to a ghost event, not the parent 2015-08-03 07:01:42 -07:00
celerity Push construction of routing maps into Sites 2015-08-31 04:01:01 -07:00
chatlog Update Chatlog for handleRequest 2015-07-31 09:14:44 -07:00
conduit Make icon setting in Section Headers easier/consistent 2015-09-19 11:29:01 -07:00
config Add dialog to purge opcode/data caches 2015-09-10 14:19:02 -07:00
conpherence Add Maniphest Task email creator to CCs 2015-09-09 14:07:07 -07:00
console Push construction of routing maps into Sites 2015-08-31 04:01:01 -07:00
countdown Simplify Countdown mailtags 2015-08-17 10:08:52 -07:00
daemon Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
dashboard Fix possible recursive embeds in Dashboard text panels 2015-08-26 17:59:47 -07:00
differential Improved example setting for differential.generated-paths 2015-09-29 14:14:31 -07:00
diffusion Hide "Revision" column in Diffusion history view if Differential is uninstalled 2015-09-29 07:09:12 -07:00
diviner Fix an issue with ClassMap handling of DivinerAtomizers 2015-08-15 06:59:18 -07:00
doorkeeper Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
draft/storage Fix visiblity of LiskDAO::getConfiguration() 2015-01-14 06:54:13 +11:00
drydock Merge the DrydockResource workers into a single worker 2015-10-01 08:10:40 -07:00
fact Update Facts for handleRequest 2015-07-27 09:12:35 -07:00
feed Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
files Use setTable on File Transforms tables 2015-09-21 12:29:05 -07:00
flag Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
fund Make icon setting in Section Headers easier/consistent 2015-09-19 11:29:01 -07:00
harbormaster Fix an issue with BuildLogs and web UI during builds 2015-09-28 19:11:51 -07:00
help Update Help for handleRequest 2015-08-01 15:40:03 -07:00
herald Make some Herald errors more spider-resistant 2015-09-25 10:43:04 -07:00
home Modernize Audit search engine 2015-08-31 10:17:54 -07:00
legalpad Make icon setting in Section Headers easier/consistent 2015-09-19 11:29:01 -07:00
lipsum Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
macro Restore the delicate balance of the universe 2015-09-18 13:59:11 -07:00
mailinglists/storage Put PhabricatorMetaMTAMailingList back to keep bin/storage adjust happy for now 2015-06-03 18:51:40 -07:00
maniphest Revert "Allow search results to be snippeted, roughly" 2015-09-10 20:57:26 -07:00
meta Make icon setting in Section Headers easier/consistent 2015-09-19 11:29:01 -07:00
metamta Make icon setting in Section Headers easier/consistent 2015-09-19 11:29:01 -07:00
multimeter Merge branch 'master' into redesign-2015 2015-06-20 06:10:54 -07:00
notification Update Notifications for handleRequest 2015-08-04 09:32:56 -07:00
nuance Make icon setting in Section Headers easier/consistent 2015-09-19 11:29:01 -07:00
oauthserver Modernize OAuthserver and provide more context on "no permission" exception 2015-09-03 10:05:23 -07:00
owners Fix button for "All Problem Commits" on Owners packages 2015-09-29 06:43:55 -07:00
passphrase Implement a rough AlmanacService blueprint in Drydock 2015-09-21 04:43:53 -07:00
paste Provide a stable URI for getting raw paste content 2015-09-25 10:45:01 -07:00
people Don't allow welcome mail to be sent to users who can't login 2015-09-20 04:28:33 -07:00
phame Add Application Routes to Phame AppSearch queries 2015-09-23 12:48:19 -07:00
phid Use PhutilClassMapQuery 2015-07-07 22:51:57 +10:00
phlux Transactions - make implementing TYPE_XXXX_POLICY transactions optional 2015-05-19 12:58:18 -07:00
pholio Make "Add Subscribers" and "Remove Subscribers" Herald actions modular 2015-08-03 14:33:22 -07:00
phortune Make icon setting in Section Headers easier/consistent 2015-09-19 11:29:01 -07:00
phpast Update XHPhast for handleRequest 2015-08-04 09:33:13 -07:00
phragment Mark some strings for translation 2015-06-09 23:06:52 +10:00
phrequent [Redesign] PhabricatorApplicationSearchResultView 2015-06-19 11:46:20 +01:00
phriction Revert "Allow search results to be snippeted, roughly" 2015-09-10 20:57:26 -07:00
phurl Fix missing mailtags in PHUrl 2015-07-24 21:30:16 -07:00
policy Modernize OAuthserver and provide more context on "no permission" exception 2015-09-03 10:05:23 -07:00
ponder Make Ponder Emails a little more consistently delivered 2015-09-29 14:25:28 -07:00
project Modernize Audit search engine 2015-08-31 10:17:54 -07:00
releeph Update Releeph for handleRequest 2015-08-29 08:33:25 -07:00
remarkup/conduit phtize all the things 2015-05-22 21:16:39 +10:00
repository Fix issue with "Publish/Notify" handling in repositories 2015-09-28 11:17:04 -07:00
search Refine error behavior of bin/search index 2015-09-27 13:11:11 -07:00
settings Use phutil_hashes_are_identical() when comparing hashes in Phabricator 2015-09-01 15:52:44 -07:00
slowvote Allow polls to be public 2015-09-28 07:55:28 -07:00
spaces Group and order Herald fields 2015-07-16 14:13:13 -07:00
subscriptions Share target filtering code in HeraldAction 2015-08-03 14:34:37 -07:00
support/application Implement the getName method in PhabricatorApplication subclasses 2014-07-23 23:52:50 +10:00
system Add bin/auth unlimit and clean up a TODO 2015-09-14 07:03:39 -07:00
tokens Badges v0.1 2015-07-22 13:37:20 -07:00
transactions Slightly modernize transaction diff controller 2015-09-25 11:15:57 -07:00
typeahead Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
uiexample More ActionPanel colors, hardening 2015-09-16 09:22:31 -07:00
xhprof Update XHProf for handleRequest 2015-08-01 15:41:57 -07:00