SQL Error with fixed_ips.deleted in devstack/postgresql

Bug #1109889 reported by Davanum Srinivas (DIMS)
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Davanum Srinivas (DIMS)

Bug Description

http://logs.openstack.org/20739/2/check/gate-tempest-devstack-vm-postgres/991/logs/screen-n-net.txt.gz

Here's the log snippet:

2013-01-30 00:22:09.440 ERROR nova.openstack.common.rpc.amqp [req-36540d57-ff59-4629-8483-7e38e7d58c84 demo demo] Exception during message handling
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/openstack/common/rpc/amqp.py", line 276, in _process_data
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp rval = self.proxy.dispatch(ctxt, version, method, **args)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/openstack/common/rpc/dispatcher.py", line 133, in dispatch
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp return getattr(proxyobj, method)(ctxt, **kwargs)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/openstack/common/rpc/common.py", line 397, in inner
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp return catch_client_exception(exceptions, func, *args, **kwargs)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/openstack/common/rpc/common.py", line 380, in catch_client_exception
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp return func(*args, **kwargs)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/network/manager.py", line 546, in associate_floating_ip
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp fixed_ip['instance_uuid'])
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/network/manager.py", line 587, in _associate_floating_ip
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp do_associate()
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/openstack/common/lockutils.py", line 234, in inner
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp retval = f(*args, **kwargs)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/network/manager.py", line 566, in do_associate
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp self.host)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/db/api.py", line 326, in floating_ip_fixed_ip_associate
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp host)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/db/sqlalchemy/api.py", line 134, in wrapper
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp return f(*args, **kwargs)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/opt/stack/new/nova/nova/db/sqlalchemy/api.py", line 798, in floating_ip_fixed_ip_associate
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp options(joinedload('network')).\
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2156, in first
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp ret = list(self[0:1])
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2023, in __getitem__
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp return list(res)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2227, in __iter__
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp return self._execute_and_instances(context)
2013-01-30 00:22:09.440 10441 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-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp result = conn.execute(querycontext.statement, self._params)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1449, in execute
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp params)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1584, in _execute_clauseelement
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp compiled_sql, distilled_params
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1698, in _execute_context
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp context)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1691, in _execute_context
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp context)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 331, in do_execute
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp cursor.execute(statement, parameters)
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp ProgrammingError: (ProgrammingError) operator does not exist: integer = boolean
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp LINE 2: ...ps.network_id = networks_1.id AND fixed_ips.deleted = false
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp ^
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp 'SELECT fixed_ips.created_at AS fixed_ips_created_at, fixed_ips.updated_at AS fixed_ips_updated_at, fixed_ips.deleted_at AS fixed_ips_deleted_at, fixed_ips.deleted AS fixed_ips_deleted, fixed_ips.id AS fixed_ips_id, fixed_ips.address AS fixed_ips_address, fixed_ips.network_id AS fixed_ips_network_id, fixed_ips.virtual_interface_id AS fixed_ips_virtual_interface_id, fixed_ips.instance_uuid AS fixed_ips_instance_uuid, fixed_ips.allocated AS fixed_ips_allocated, fixed_ips.leased AS fixed_ips_leased, fixed_ips.reserved AS fixed_ips_reserved, fixed_ips.host AS fixed_ips_host, networks_1.created_at AS networks_1_created_at, networks_1.updated_at AS networks_1_updated_at, networks_1.deleted_at AS networks_1_deleted_at, networks_1.deleted AS networks_1_deleted, networks_1.id AS networks_1_id, networks_1.label AS networks_1_label, networks_1.injected AS networks_1_injected, networks_1.cidr AS networks_1_cidr, networks_1.cidr_v6 AS networks_1_cidr_v6, networks_1.multi_host AS networks_1_multi_host, networks_1.gateway_v6 AS networks_1_gateway_v6, networks_1.netmask_v6 AS networks_1_netmask_v6, networks_1.netmask AS networks_1_netmask, networks_1.bridge AS networks_1_bridge, networks_1.bridge_interface AS networks_1_bridge_interface, networks_1.gateway AS networks_1_gateway, networks_1.broadcast AS networks_1_broadcast, networks_1.dns1 AS networks_1_dns1, networks_1.dns2 AS networks_1_dns2, networks_1.vlan AS networks_1_vlan, networks_1.vpn_public_address AS networks_1_vpn_public_address, networks_1.vpn_public_port AS networks_1_vpn_public_port, networks_1.vpn_private_address AS networks_1_vpn_private_address, networks_1.dhcp_start AS networks_1_dhcp_start, networks_1.rxtx_base AS networks_1_rxtx_base, networks_1.project_id AS networks_1_project_id, networks_1.priority AS networks_1_priority, networks_1.host AS networks_1_host, networks_1.uuid AS networks_1_uuid \nFROM fixed_ips LEFT OUTER JOIN networks AS networks_1 ON fixed_ips.network_id = networks_1.id AND fixed_ips.deleted = %(deleted_1)s \nWHERE fixed_ips.deleted = %(deleted_2)s AND fixed_ips.address = %(address_1)s \n LIMIT %(param_1)s' {'param_1': 1, 'address_1': u'10.1.0.3', 'deleted_1': False, 'deleted_2': 0}
2013-01-30 00:22:09.440 10441 TRACE nova.openstack.common.rpc.amqp
2013-01-30 00:22:09.444 ERROR nova.openstack.common.rpc.common [req-36540d57-ff59-4629-8483-7e38e7d58c84 demo demo] Returning exception (ProgrammingError) operator does not exist: integer = boolean
LINE 2: ...ps.network_id = networks_1.id AND fixed_ips.deleted = false
                                                               ^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/20777

Changed in nova:
assignee: nobody → Davanum Srinivas (DIMS) (dims-v)
status: New → In Progress
Dan Prince (dan-prince)
Changed in nova:
importance: Undecided → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/20777
Committed: http://github.com/openstack/nova/commit/dff7b9f344b5ebc3529217317d665500c603fa1e
Submitter: Jenkins
Branch: master

commit dff7b9f344b5ebc3529217317d665500c603fa1e
Author: Davanum Srinivas <email address hidden>
Date: Tue Jan 29 20:57:38 2013 -0500

    Fix SQL Error with fixed ips under devstack/postgresql

    Postgresql does not allow sql that mix integer and booleans.
    Switch to check if deleted flag is set to 0

    Fixes LP# 1109889

    Change-Id: Icf03aa9591d398ba7d12f0db91e43df140e0df50

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in nova:
milestone: none → grizzly-3
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: grizzly-3 → 2013.1
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.