Homec4science

Migrate all Maniphest transaction data to new storage

Authored by epriestley <git@epriestley.com> on Sep 23 2013, 23:25.

Description

Migrate all Maniphest transaction data to new storage

Summary:
Ref T2217. This is the risky, hard part; everything after this should be smooth sailing. This is mostly clean, except:

  • The old format would opportunistically combine a comment with some other transaction type if it could. We no longer do that, so:
    • When migrating, "edit" + "comment" transactions need to be split in two.
    • When editing now, we should no longer combine these transaction types.
    • These changes are pretty straightforward and low-impact.
  • This migration promotes "auxiliary field" data to the new CustomField/StandardField format, so that's not a straight migration either. The formats are very similar, though.

Broadly, this takes the same attack that the auth migration did: proxy all the code through to the new storage. ManiphestTransaction is now just an API on top of ManiphestTransactionPro, which is the new storage format. The two formats are very similar, so this was mostly a straight copy from one table to the other.

Test Plan:

  • Without performing the migration, made a bunch of edits and comments on tasks and verified the new code works correctly.
  • Droped the test data and performed the migration.
  • Looked at the resulting data for obvious discrepancies.
  • Looked at a bunch of tasks and their transaction history.
  • Used Conduit to pull transaction data.
  • Edited task description and clicked "View Details" on transaction.
  • Used batch editor.
  • Made a bunch more edits.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T2217

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

Details

Committed
epriestley <git@epriestley.com>Sep 23 2013, 23:25
Pushed
aubortJan 31 2017, 17:16
Parents
rPH17e1732152ae: Route all ManiphestTransaction reads through a single class
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPH7abe9dc4c078: Migrate all Maniphest transaction data to new storage (authored by epriestley <git@epriestley.com>).Sep 23 2013, 23:25