Page MenuHomePhabricator

Begin generating meaningful expected schemata
ClosedPublic

Authored by epriestley on Sep 15 2014, 3:58 PM.
Tags
None
Referenced Files
F14357728: D10497.diff
Fri, Dec 20, 6:36 AM
Unknown Object (File)
Tue, Dec 17, 5:38 AM
Unknown Object (File)
Mon, Dec 16, 2:45 AM
Unknown Object (File)
Fri, Dec 13, 10:19 PM
Unknown Object (File)
Tue, Dec 10, 3:59 AM
Unknown Object (File)
Sat, Dec 7, 5:29 AM
Unknown Object (File)
Nov 11 2024, 10:25 AM
Unknown Object (File)
Oct 31 2024, 12:12 PM
Subscribers

Details

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.

Diff Detail

Repository
rP Phabricator
Branch
utf3
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 2544
Build 2548: [Placeholder Plan] Wait for 30 Seconds

Event Timeline

epriestley retitled this revision from to Begin generating meaningful expected schemata.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: btrahan.
btrahan edited edge metadata.
btrahan added inline comments.
src/applications/differential/storage/DifferentialSchemaSpec.php
7

i know whats coming soon

This revision is now accepted and ready to land.Sep 16 2014, 6:36 PM
src/applications/differential/storage/DifferentialSchemaSpec.php
7

hehe

This revision was automatically updated to reflect the committed changes.