Fix add_is_default_to_subnetpool migration

add_is_default_to_subnetpool migration[1] is not working with a
non-empty subnetpool table because it adds a new non-nullable column
(is_default) to subnetpool table without a default value.

This change adds a server_default value to is_default column in
subnetpool table and updates associated db migration.

[1] neutron/db/migration/alembic_migrations/versions/mitaka/expand/\
     13cfb89f881a_add_is_default_to_subnetpool.py

Closes-Bug: #1557757
Change-Id: Ib0b2ac061d21a7d908f14b399b0bba06d94b7241
This commit is contained in:
Cedric Brandily 2016-03-15 22:50:19 +01:00
parent 2413ab2979
commit 79bc54a2d8
2 changed files with 5 additions and 1 deletions

View File

@ -27,10 +27,12 @@ down_revision = '59cb5b6cf4d'
from alembic import op
import sqlalchemy as sa
from sqlalchemy import sql
def upgrade():
op.add_column('subnetpools',
sa.Column('is_default',
sa.Boolean(),
server_default=sql.false(),
nullable=False))

View File

@ -15,6 +15,7 @@
import sqlalchemy as sa
from sqlalchemy import orm
from sqlalchemy import sql
from neutron.api.v2 import attributes as attr
from neutron.common import constants
@ -248,7 +249,8 @@ class SubnetPool(model_base.HasStandardAttributes, model_base.BASEV2,
min_prefixlen = sa.Column(sa.Integer, nullable=False)
max_prefixlen = sa.Column(sa.Integer, nullable=False)
shared = sa.Column(sa.Boolean, nullable=False)
is_default = sa.Column(sa.Boolean, nullable=False)
is_default = sa.Column(sa.Boolean, nullable=False,
server_default=sql.false())
default_quota = sa.Column(sa.Integer, nullable=True)
hash = sa.Column(sa.String(36), nullable=False, server_default='')
address_scope_id = sa.Column(sa.String(36), nullable=True)