Page MenuHomePhabricator

Remove all readers and all nontrivial writers for "accountType" and "accountDomain" on "ExternalAccount"

Authored by epriestley on Feb 22 2020, 10:29 PM.
Referenced Files
F13337097: D21019.diff
Wed, Jun 19, 9:05 AM
F13322189: D21019.diff
Fri, Jun 14, 7:41 AM
F13252749: D21019.diff
Sat, May 25, 2:02 AM
F13245047: D21019.id50065.diff
Thu, May 23, 5:36 AM
F13238822: D21019.diff
Tue, May 21, 9:33 PM
F13231314: D21019.id50065.diff
Tue, May 21, 12:22 AM
F13205734: D21019.diff
May 15 2024, 2:19 AM
F13190206: D21019.id50082.diff
May 11 2024, 8:18 AM
Restricted Owners Package



Depends on D21018. Ref T13493. Ref T6703. The "ExternalAccount" table has a unique key on <accountType, accountDomain, accountID> but this no longer matches our model of reality and changes in this sequence end writes to accountID.

Remove this key.

Then, remove all readers of accountType and accountDomain (and all nontrivial writers) because none of these callsites are well-aligned with plans in T6703.

This change has no user-facing impact today: all the rules about linking/unlinking/etc remain unchanged, because other rules currently prevent creation of more than one provider with a given "accountType".

Test Plan
  • Linked an OAuth1 account (JIRA).
  • Linked an OAuth2 account (Asana).
  • Used bin/auth refresh to cycle OAuth tokens.
  • Grepped for affected symbols.
  • Published an Asana update.
  • Published a JIRA link.

Diff Detail

rP Phabricator
Lint Passed
Tests Passed
Build Status
Buildable 23889
Build 32874: Run Core Tests
Build 32873: arc lint + arc unit