yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #60508
[Bug 1656716] [NEW] Internal Server Error with native pagination
Public bug reported:
Internal Server Error with native pagination, when a user specified
some unfortunate sort keys.
eg.
the following request is constructed to make pagination code see a marker with fixed_ip_address=None.
ubu7% neutron floatingip-list --sort-key fixed_ip_address --sort-dir desc|cat
+--------------------------------------+------------------+---------------------+--------------------------------------+
| id | fixed_ip_address | floating_ip_address | port_id |
+--------------------------------------+------------------+---------------------+--------------------------------------+
| 2b3b7d02-3404-4c53-a783-e4c5ed5b5aee | | 172.24.4.2 | |
| 67f732a1-1b02-4c90-9eb2-7318c0e7e5b6 | | 172.24.4.4 | |
| dcc24c05-5697-4273-9ce1-d17b5e9372a4 | | 172.24.4.7 | |
| 29c951e5-5d64-4bbc-bdf9-9774e308d1c3 | 10.0.0.9 | 2000::9 | 3e78c8f5-eb7c-4a0d-a90e-7a804f4dd886 |
| d93b6472-6cf0-4233-9b27-bbb80e253214 | 10.0.0.9 | 172.24.4.8 | 3e78c8f5-eb7c-4a0d-a90e-7a804f4dd886 |
+--------------------------------------+------------------+---------------------+--------------------------------------+
ubu7% curl -g -i -X GET "http://192.168.137.129:9696/v2.0/floatingips.json?limit=1&sort_key=fixed_ip_address&sort_dir=desc&marker=2b3b7d02-3404-4c53-a783-e4c5ed5b5aee" -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: $TOKEN"
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
Content-Length: 150
X-Openstack-Request-Id: req-e889f8c3-2f10-4ae8-b177-9fab54e8f1a9
Date: Thu, 12 Jan 2017 20:01:39 GMT
{"NeutronError": {"message": "Request Failed: internal server error
while processing your request.", "type": "HTTPInternalServerError",
"detail": ""}}%
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource Traceback (most recent call last):
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/resource.py", line 79, in resource
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource result = method(request=request, **args)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 92, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 88, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 151, in wrapper
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource ectxt.value = e.inner_exc
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 139, in wrapper
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 128, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource traceback.format_exc())
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 123, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*dup_args, **dup_kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 369, in index
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self._items(request, True, parent_id)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 308, in _items
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource obj_list = obj_getter(request.context, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 163, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return method(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 92, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 88, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 151, in wrapper
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource ectxt.value = e.inner_exc
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 139, in wrapper
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 128, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource traceback.format_exc())
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 123, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*dup_args, **dup_kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/l3_db.py", line 1413, in get_floatingips
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource page_reverse=page_reverse)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/common_db_mixin.py", line 238, in _get_collection
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource page_reverse=page_reverse)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/common_db_mixin.py", line 228, in _get_collection_query
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource sort_dirs=sort_dirs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/sqlalchemy/utils.py", line 233, in paginate_query
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource crit_attrs.append((model_attr < marker_values[i]))
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/operators.py", line 282, in __lt__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self.operate(lt, other)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/attributes.py", line 175, in operate
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return op(self.comparator, *other, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/operators.py", line 282, in __lt__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self.operate(lt, other)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/properties.py", line 269, in operate
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return op(self.__clause_element__(), *other, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/operators.py", line 282, in __lt__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self.operate(lt, other)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/elements.py", line 742, in operate
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return op(self.comparator, *other, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/operators.py", line 282, in __lt__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self.operate(lt, other)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "<string>", line 1, in <lambda>
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/type_api.py", line 60, in operate
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return o[0](self.expr, op, *(other + o[1:]), **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/default_comparator.py", line 53, in _boolean_compare
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource "Only '=', '!=', 'is_()', 'isnot()' operators can "
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource ArgumentError: Only '=', '!=', 'is_()', 'isnot()' operators can be used with None/True/False
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource
** Affects: neutron
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1656716
Title:
Internal Server Error with native pagination
Status in neutron:
New
Bug description:
Internal Server Error with native pagination, when a user specified
some unfortunate sort keys.
eg.
the following request is constructed to make pagination code see a marker with fixed_ip_address=None.
ubu7% neutron floatingip-list --sort-key fixed_ip_address --sort-dir desc|cat
+--------------------------------------+------------------+---------------------+--------------------------------------+
| id | fixed_ip_address | floating_ip_address | port_id |
+--------------------------------------+------------------+---------------------+--------------------------------------+
| 2b3b7d02-3404-4c53-a783-e4c5ed5b5aee | | 172.24.4.2 | |
| 67f732a1-1b02-4c90-9eb2-7318c0e7e5b6 | | 172.24.4.4 | |
| dcc24c05-5697-4273-9ce1-d17b5e9372a4 | | 172.24.4.7 | |
| 29c951e5-5d64-4bbc-bdf9-9774e308d1c3 | 10.0.0.9 | 2000::9 | 3e78c8f5-eb7c-4a0d-a90e-7a804f4dd886 |
| d93b6472-6cf0-4233-9b27-bbb80e253214 | 10.0.0.9 | 172.24.4.8 | 3e78c8f5-eb7c-4a0d-a90e-7a804f4dd886 |
+--------------------------------------+------------------+---------------------+--------------------------------------+
ubu7% curl -g -i -X GET "http://192.168.137.129:9696/v2.0/floatingips.json?limit=1&sort_key=fixed_ip_address&sort_dir=desc&marker=2b3b7d02-3404-4c53-a783-e4c5ed5b5aee" -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: $TOKEN"
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
Content-Length: 150
X-Openstack-Request-Id: req-e889f8c3-2f10-4ae8-b177-9fab54e8f1a9
Date: Thu, 12 Jan 2017 20:01:39 GMT
{"NeutronError": {"message": "Request Failed: internal server error
while processing your request.", "type": "HTTPInternalServerError",
"detail": ""}}%
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource Traceback (most recent call last):
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/resource.py", line 79, in resource
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource result = method(request=request, **args)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 92, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 88, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 151, in wrapper
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource ectxt.value = e.inner_exc
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 139, in wrapper
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 128, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource traceback.format_exc())
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 123, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*dup_args, **dup_kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 369, in index
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self._items(request, True, parent_id)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 308, in _items
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource obj_list = obj_getter(request.context, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 163, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return method(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 92, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 88, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 151, in wrapper
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource ectxt.value = e.inner_exc
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 139, in wrapper
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*args, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 128, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource traceback.format_exc())
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource self.force_reraise()
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource six.reraise(self.type_, self.value, self.tb)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/api.py", line 123, in wrapped
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return f(*dup_args, **dup_kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/l3_db.py", line 1413, in get_floatingips
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource page_reverse=page_reverse)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/common_db_mixin.py", line 238, in _get_collection
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource page_reverse=page_reverse)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/common_db_mixin.py", line 228, in _get_collection_query
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource sort_dirs=sort_dirs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/oslo_db/sqlalchemy/utils.py", line 233, in paginate_query
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource crit_attrs.append((model_attr < marker_values[i]))
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/operators.py", line 282, in __lt__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self.operate(lt, other)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/attributes.py", line 175, in operate
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return op(self.comparator, *other, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/operators.py", line 282, in __lt__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self.operate(lt, other)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/properties.py", line 269, in operate
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return op(self.__clause_element__(), *other, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/operators.py", line 282, in __lt__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self.operate(lt, other)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/elements.py", line 742, in operate
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return op(self.comparator, *other, **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/operators.py", line 282, in __lt__
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return self.operate(lt, other)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "<string>", line 1, in <lambda>
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/type_api.py", line 60, in operate
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource return o[0](self.expr, op, *(other + o[1:]), **kwargs)
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/default_comparator.py", line 53, in _boolean_compare
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource "Only '=', '!=', 'is_()', 'isnot()' operators can "
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource ArgumentError: Only '=', '!=', 'is_()', 'isnot()' operators can be used with None/True/False
2017-01-13 05:01:39.706 TRACE neutron.api.v2.resource
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1656716/+subscriptions