• 
      

    Fix upgrading database settings.

    Review Request #3684 — Created Dec. 19, 2012 and submitted — Latest diff uploaded

    Information

    Review Board
    release-1.7.x

    Reviewers

    Fix upgrading database settings.
    
    We had two problems with the upgrade of database settings. The first was
    that we never properly migrated postgresql backends to have the full
    module path, which meant that we had a new-style DATABASES, but an
    old-style engine value.
    
    The second is that, starting in Django 1.4, the old-style engine names
    are deprecated, and the settings file was cached prior to the settings
    upgrade. So in both the above case and a move from an old version with
    DATABASE_ENGINE, we ended up with the old values still in settings, and
    that broke the upgrading.
    
    We're now upgrading the postgresql setting, and we're also reloading the
    settings so that we can use them during DB upgrade.
    Created a site that had an ENGINE of 'postgres_psycopg2'. Upgraded it and
    verified that the proper engine path was set.
    
    Also tested the above case and the case of an old DATABASE_ENGINE setting.
    Prior to this, both failed with an error since the old settings were used.
    After, both cases worked fine.