Ignore NULL fixed_ips for duplicate floating_ip check
Closes-Bug: #1628549 Change-Id: Ie49b46af93697ca67009373eadce9ba4f312dcc0
This commit is contained in:
parent
571999037f
commit
a80b89b6fe
|
@ -69,4 +69,4 @@ def get_duplicate_floating_ip_for_one_fixed_ip(connection):
|
|||
floatingips.c.fixed_port_id,
|
||||
floatingips.c.fixed_ip_address)
|
||||
.having(sa.func.count() > 1)).all()
|
||||
return [q[0] for q in query]
|
||||
return [q[0] for q in query if q[0] is not None]
|
||||
|
|
|
@ -398,7 +398,7 @@ class TestSanityCheck(testlib_api.SqlTestCaseLight):
|
|||
self.assertRaises(script.DuplicatePortRecordinRouterPortdatabase,
|
||||
script.check_sanity, conn)
|
||||
|
||||
def test_check_sanity_6b461a21bcfc(self):
|
||||
def test_check_sanity_6b461a21bcfc_dup_on_fixed_ip(self):
|
||||
floatingips = sqlalchemy.Table(
|
||||
'floatingips', sqlalchemy.MetaData(),
|
||||
sqlalchemy.Column('floating_network_id', sqlalchemy.String(36)),
|
||||
|
@ -421,6 +421,28 @@ class TestSanityCheck(testlib_api.SqlTestCaseLight):
|
|||
self.assertRaises(script.DuplicateFloatingIPforOneFixedIP,
|
||||
script.check_sanity, conn)
|
||||
|
||||
def test_check_sanity_6b461a21bcfc_dup_on_no_fixed_ip(self):
|
||||
floatingips = sqlalchemy.Table(
|
||||
'floatingips', sqlalchemy.MetaData(),
|
||||
sqlalchemy.Column('floating_network_id', sqlalchemy.String(36)),
|
||||
sqlalchemy.Column('fixed_port_id', sqlalchemy.String(36)),
|
||||
sqlalchemy.Column('fixed_ip_address', sqlalchemy.String(64)))
|
||||
|
||||
with self.engine.connect() as conn:
|
||||
floatingips.create(conn)
|
||||
conn.execute(floatingips.insert(), [
|
||||
{'floating_network_id': '12345',
|
||||
'fixed_port_id': '1234567',
|
||||
'fixed_ip_address': None},
|
||||
{'floating_network_id': '12345',
|
||||
'fixed_port_id': '1234567',
|
||||
'fixed_ip_address': None}
|
||||
])
|
||||
script_dir = alembic_script.ScriptDirectory.from_config(
|
||||
self.alembic_config)
|
||||
script = script_dir.get_revision("6b461a21bcfc").module
|
||||
self.assertIsNone(script.check_sanity(conn))
|
||||
|
||||
|
||||
class TestWalkDowngrade(oslotest_base.BaseTestCase):
|
||||
|
||||
|
|
Loading…
Reference in New Issue