← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1112536] Re: Empty floating_ips.address generates bad SQL under Postgres

 

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

** Changed in: nova
    Milestone: None => grizzly-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/1112536

Title:
  Empty floating_ips.address generates bad SQL under Postgres

Status in OpenStack Compute (Nova):
  Fix Released

Bug description:
  Please see the log here - http://logs.openstack.org/20965/1/check
  /gate-tempest-devstack-vm-postgres-full/157/logs/screen-n-net.txt.gz

  
  2013-02-01 03:47:49.157 7504 DEBUG nova.openstack.common.rpc.amqp [-] unpacked context: {'read_deleted': u'no', 'project_name': u'FloatingIPsTestJSON306051-tenant', 'user_id': u'3cc28d294bba40b49756da5a7b294b39', 'roles': [u''], 'timestamp': u'2013-02-01T03:47:49.066279', 'auth_token': '<SANITIZED>', 'remote_address': u'127.0.0.1', 'quota_class': None, 'is_admin': False, 'user': u'3cc28d294bba40b49756da5a7b294b39', 'service_catalog': [{u'endpoints_links': [], u'endpoints': [{u'adminURL': u'http://127.0.0.1:8776/v1/8efb05ba455b489c854e2d50f2b6315d', u'region': u'RegionOne', u'publicURL': u'http://127.0.0.1:8776/v1/8efb05ba455b489c854e2d50f2b6315d', u'internalURL': u'http://127.0.0.1:8776/v1/8efb05ba455b489c854e2d50f2b6315d', u'id': u'8bbfc05407de4cc786a5176635f1feff'}], u'type': u'volume', u'name': u'cinder'}], 'request_id': u'req-6014fdd9-cf3f-4f8f-9200-d90897c63ed6', 'instance_lock_checked': False, 'project_id': u'8efb05ba455b489c854e2d50f2b6315d', 'user_name': u'FloatingIPsTestJSON306051-user', 'tenant': u'8efb05ba455b489c854e2d50f2b6315d'} _safe_log /opt/stack/new/nova/nova/openstack/common/rpc/common.py:249
  2013-02-01 03:47:49.162 ERROR nova.openstack.common.rpc.amqp [req-6014fdd9-cf3f-4f8f-9200-d90897c63ed6 FloatingIPsTestJSON306051-user FloatingIPsTestJSON306051-tenant] Exception during message handling
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/openstack/common/rpc/amqp.py", line 276, in _process_data
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     rval = self.proxy.dispatch(ctxt, version, method, **args)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/openstack/common/rpc/dispatcher.py", line 133, in dispatch
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return getattr(proxyobj, method)(ctxt, **kwargs)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/openstack/common/rpc/common.py", line 397, in inner
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return catch_client_exception(exceptions, func, *args, **kwargs)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/openstack/common/rpc/common.py", line 380, in catch_client_exception
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return func(*args, **kwargs)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/network/manager.py", line 508, in associate_floating_ip
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     floating_address)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/db/api.py", line 346, in floating_ip_get_by_address
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return IMPL.floating_ip_get_by_address(context, address)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/db/sqlalchemy/api.py", line 134, in wrapper
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return f(*args, **kwargs)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/db/sqlalchemy/api.py", line 888, in floating_ip_get_by_address
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return _floating_ip_get_by_address(context, address)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/db/sqlalchemy/api.py", line 134, in wrapper
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return f(*args, **kwargs)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/opt/stack/new/nova/nova/db/sqlalchemy/api.py", line 894, in _floating_ip_get_by_address
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     filter_by(address=address).\
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2156, in first
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     ret = list(self[0:1])
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2023, in __getitem__
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return list(res)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2227, in __iter__
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     return self._execute_and_instances(context)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2242, in _execute_and_instances
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     result = conn.execute(querycontext.statement, self._params)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1449, in execute
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     params)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1584, in _execute_clauseelement
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     compiled_sql, distilled_params
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1698, in _execute_context
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     context)
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp   File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1850, in _handle_dbapi_exception
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp     None, sys.exc_info()[2]
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp DataError: (DataError) invalid input syntax for type inet: ""
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp LINE 3: ...HERE floating_ips.deleted = 0 AND floating_ips.address = '' 
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp                                                                     ^
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp  'SELECT floating_ips.created_at AS floating_ips_created_at, floating_ips.updated_at AS floating_ips_updated_at, floating_ips.deleted_at AS floating_ips_deleted_at, floating_ips.deleted AS floating_ips_deleted, floating_ips.id AS floating_ips_id, floating_ips.address AS floating_ips_address, floating_ips.fixed_ip_id AS floating_ips_fixed_ip_id, floating_ips.project_id AS floating_ips_project_id, floating_ips.host AS floating_ips_host, floating_ips.auto_assigned AS floating_ips_auto_assigned, floating_ips.pool AS floating_ips_pool, floating_ips.interface AS floating_ips_interface \nFROM floating_ips \nWHERE floating_ips.deleted = %(deleted_1)s AND floating_ips.address = %(address_1)s \n LIMIT %(param_1)s' {'param_1': 1, 'address_1': u'', 'deleted_1': 0}
  2013-02-01 03:47:49.162 7504 TRACE nova.openstack.common.rpc.amqp 
  2013-02-01 03:47:49.170 ERROR nova.openstack.common.rpc.common [req-6014fdd9-cf3f-4f8f-9200-d90897c63ed6 FloatingIPsTestJSON306051-user FloatingIPsTestJSON306051-tenant] Returning exception (DataError) invalid input syntax for type inet: ""
  LINE 3: ...HERE floating_ips.deleted = 0 AND floating_ips.address = '' 
                                                                      ^
   'SELECT floating_ips.created_at AS floating_ips_created_at, floating_ips.updated_at AS floating_ips_updated_at, floating_ips.deleted_at AS floating_ips_deleted_at, floating_ips.deleted AS floating_ips_deleted, floating_ips.id AS floating_ips_id, floating_ips.address AS floating_ips_address, floating_ips.fixed_ip_id AS floating_ips_fixed_ip_id, floating_ips.project_id AS floating_ips_project_id, floating_ips.host AS floating_ips_host, floating_ips.auto_assigned AS floating_ips_auto_assigned, floating_ips.pool AS floating_ips_pool, floating_ips.interface AS floating_ips_interface \nFROM floating_ips \nWHERE floating_ips.deleted = %(deleted_1)s AND floating_ips.address = %(address_1)s \n LIMIT %(param_1)s' {'param_1': 1, 'address_1': u'', 'deleted_1': 0} to caller

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