Homec4science

Begin generating meaningful expected schemata

Authored by epriestley <git@epriestley.com> on Sep 18 2014, 17:25.

Description

Begin generating meaningful expected schemata

Summary:
Ref T1191. This lays some groundwork for generating the expected schemata, so we can compare them to the actual schemata and produce a meaningful diff.

  • In general, each application will subclass PhabricatorConfigSchemaSpec and provide a definition of the tables it expects.
  • This class has helper methods to mostly-automatically build table definitions for Lisk and (in the future) edges.
  • When building expected schema, we specify a "data type", like "epoch". This is the type of data the application stores in the column, from the application's point of view. The SchemaSpec converts this into the best avilable storage type: for example, "text" will translate to utf8mb4 if it's availalbe, or binary if not. This gives us a layer of indirection to insulate us from craziness.

Test Plan: See screenshots.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T1191

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

Details

Committed
epriestley <git@epriestley.com>Sep 18 2014, 17:25
Pushed
aubortJan 31 2017, 17:16
Parents
rPHb24e36706d40: Generate expected and comparison schemata
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPHaa481dba570d: Begin generating meaningful expected schemata (authored by epriestley <git@epriestley.com>).Sep 18 2014, 17:25