← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1201453] Re: Downgrade of migration 186 is broken when using SQLAlchemy 0.8.x

 

** Changed in: nova
       Status: Fix Committed => Fix Released

** Changed in: nova
    Milestone: None => havana-3

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1201453

Title:
  Downgrade of migration 186 is broken when using SQLAlchemy 0.8.x

Status in OpenStack Compute (Nova):
  Fix Released

Bug description:
  In SQLAlchemy 0.8.x "Referring to a non-existent column in an insert()
  or update() construct will raise an error instead of a warning".

  The code in migration 186 downgrade:

          blanks = [
              dict(zip(('id', 'source', 'format'), row))
              for row in bdm_q.execute().fetchall()
          ]

          swap = [dev for dev in blanks if dev['format'] == 'swap']
          assert len(swap) < 2
          ephemerals = [dev for dev in blanks if dev not in swap]

          for index, eph in enumerate(ephemerals):
              eph['virtual_name'] = 'ephemeral' + str(index)

          if swap:
              swap[0]['virtual_name'] = 'swap'

          for bdm in swap + ephemerals:
              bdm_table.update().where(
                  bdm_table.c.id == bdm['id']
              ).values(**bdm).execute() 

  
  refers to non-existing columns "source" and "format"

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1201453/+subscriptions