Tag Archives: version control

Audit Trails

Back in February, I defined the film table version 0.1 with just three columns: CREATE TABLE film ( id INTEGER NOT NULL PRIMARY KEY, title VARCHAR(32) NOT NULL, release_year INTEGER NOT NULL CHECK (release_year >= 1888) ); It was unclear … Continue reading

Posted in PostgreSQL, Python, User interfaces, Version control | Tagged , , , , | 2 Comments

PostgreSQL Version Control Feature Coverage

In a comment to one of my early posts about version control, Peter Eisentraut stated he was “somewhat discouraged because [seeing how fast PostgreSQL develops and adds new features,] I don’t see how a tool like apgdiff can keep up … Continue reading

Posted in PostgreSQL, Version control | Tagged , , | 6 Comments

Gearing up for a second release

The first release of Pyrseas was aimed at addressing the essential version control issues described in my first posts. The second release, somewhat accidentally, has focused on being able to recreate the PostgreSQL autodoc regression database. In addition, Pyrseas will … Continue reading

Posted in PostgreSQL, Version control | Tagged , , , | Leave a comment

SQL Version Control Implementation Choices II

In the previous post, I discussed two alternative implementations for the yamltodb difference engine: SQL comparisons using extra dictionary tables, and comparing the YAML/JSON maps (Python dicts). Today I’ll review the last option: internal structure comparisons. Internal Structures – Take … Continue reading

Posted in PostgreSQL, Python, Version control | Tagged , , , | 1 Comment

SQL Version Control Implementation Choices I

The Andromeda “data dictionary” is organized as multiple hierarchies, e.g., modules, generic columns, and tables with columns. Here is a very simple example: module movies: description: Movies column id: type_id: int column title: type_id: vchar colprec: 32 column release_year: type_id: … Continue reading

Posted in PostgreSQL, Python, Version control | Tagged , , , , | 3 Comments

SQL Database Version Control and RENAMEs

You’ve just watched Josh Berkus’ presentation “Ten Ways to Wreck Your Database” and bearing in mind point #2 “ranDom_naming(s),” your team has decided to get your act together and adopt a naming convention (although this may not be advantageous to … Continue reading

Posted in PostgreSQL, Version control | Tagged , , , , | Leave a comment

SQL Database Version Control – Pyrseas

Now that Pyrseas has been released, it’s time to see how the DBAs Carol and Dave would use it to manage the changes described in Version Control, Part 2: SQL Databases. Version 0.1 Carol starts by creating the film table in … Continue reading

Posted in PostgreSQL, Python, Version control | Tagged , , , , , | 2 Comments

SQL Version Control System Design Issues

The initial release of Pyrseas is nearing completion. As noted elsewhere, Pyrseas was born to follow through on the concepts of the Andromeda Project. The idea of using a data dictionary specified in JSON or YAML was perhaps the most … Continue reading

Posted in PostgreSQL, Python, Version control | Tagged , , , | 8 Comments

SQL Database Version Control – Summary

Update: Please visit the Schema VC page for updated information. Before moving on to discussing how the Pyrseas version control tools deal with the database changes we’ve been using as examples, it seems appropriate to summarize the tools reviewed so … Continue reading

Posted in PostgreSQL, Version control | Tagged , | 6 Comments

SQL Database Version Control – Andromeda

In my first review of database VC tools, I mentioned Kenneth Down’s article where he recommended storing a single metadata file in a VCS and using a difference engine to do database upgrades. In a subsequent post, Kenneth expanded on … Continue reading

Posted in PostgreSQL, Version control | Tagged , , , | 4 Comments