~/panel

DjangoCon 2008 Panel: Schema Evolution

Panelat DjangoCon US 2008 · on Saturday, 2008-09-06· [databases]
slides:none on file

Three different migration systems get shown: Demigrations stores raw SQL files with up/down methods, runs manage.py demigrate up/down, and the team reports 14 developers and ~350 migrations in use; South generates Python migrations from Django fields, adds DB independence and a dependency resolver and currently targets Postgres/MySQL (SQLite/Oracle work planned); Django Evolution diffs model signatures, emits hinted or stored mutations and validates them. All warn that DDL may not roll back on MySQL, so backups and staging tests are required.

AI-written summary · about

  1. 0:00Start
  2. 18:35Pickled summary of Django model • Stores state of Django models at syncdb • Can be diffed against current models • Diffs used to generate hints
  3. 21:20Best guess at changes required • Can be executed immediately • Can be used as prototype Stored evolution • Can't resolve ambiguous updates (rename) • Can't fill in the blanks (initial data)
  4. 25:06Core of approach: Hint and Tweak (!magic) • Simple changes without user intervention • Easy entry for customization, raw SQL • Self documenting self auditing • Validation (where possible)
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.