I hit this bug from a component which I would think is unrelated (tacker), so it was difficult to narrow the problem, glad to find this bug. Yesterday I installed a newer version of Tacker, which also pulled this new version of python-novaclient. Now I'm not able to perform any nova-related tasks from horizon (unable to retrieve instances, unable to retrieve the flavors, etc). This is my log from apache: [Tue Feb 14 08:56:53.710637 2017] [wsgi:error] [pid 2001:tid 139696932181760] Recoverable error: Expecting to find domain in user - the server could not comply with the request since it is either malformed or otherwise incorrect. The client is assumed to be in error. (HTTP 400) (Request-ID: req-08731c0b-05a9-4b28-9959-fbed98f2308d) [Tue Feb 14 08:56:54.149827 2017] [wsgi:error] [pid 2001:tid 139696932181760] Call to list supported extensions failed. This is likely due to a problem communicating with the Nova endpoint. Host Aggregates panel will not be displayed. [Tue Feb 14 08:56:54.221511 2017] [wsgi:error] [pid 2001:tid 139696932181760] Failed to retrieve quota information [Tue Feb 14 08:56:54.221572 2017] [wsgi:error] [pid 2001:tid 139696932181760] Traceback (most recent call last): [Tue Feb 14 08:56:54.221591 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/dashboards/project/instances/tables.py", line 389, in allowed [Tue Feb 14 08:56:54.221609 2017] [wsgi:error] [pid 2001:tid 139696932181760] limits = api.nova.tenant_absolute_limits(request, reserved=True) [Tue Feb 14 08:56:54.221622 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/api/nova.py", line 949, in tenant_absolute_limits [Tue Feb 14 08:56:54.221633 2017] [wsgi:error] [pid 2001:tid 139696932181760] limits = novaclient(request).limits.get(reserved=reserved).absolute [Tue Feb 14 08:56:54.221645 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/novaclient/v2/limits.py", line 100, in get [Tue Feb 14 08:56:54.221657 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self._get("/limits%s" % query_string, "limits") [Tue Feb 14 08:56:54.221669 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/novaclient/base.py", line 351, in _get [Tue Feb 14 08:56:54.221680 2017] [wsgi:error] [pid 2001:tid 139696932181760] resp, body = self.api.client.get(url) [Tue Feb 14 08:56:54.221691 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/adapter.py", line 217, in get [Tue Feb 14 08:56:54.221703 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self.request(url, 'GET', **kwargs) [Tue Feb 14 08:56:54.221712 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/novaclient/client.py", line 74, in request [Tue Feb 14 08:56:54.221723 2017] [wsgi:error] [pid 2001:tid 139696932181760] **kwargs) [Tue Feb 14 08:56:54.221734 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/adapter.py", line 374, in request [Tue Feb 14 08:56:54.221745 2017] [wsgi:error] [pid 2001:tid 139696932181760] resp = super(LegacyJsonAdapter, self).request(*args, **kwargs) [Tue Feb 14 08:56:54.221754 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/adapter.py", line 142, in request [Tue Feb 14 08:56:54.221763 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self.session.request(url, method, **kwargs) [Tue Feb 14 08:56:54.221771 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/lib/python2.7/dist-packages/positional/_init_.py", line 101, in inner [Tue Feb 14 08:56:54.221794 2017] [wsgi:error] [pid 2001:tid 139696932181760] return wrapped(*args, **kwargs) [Tue Feb 14 08:56:54.221806 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/session.py", line 491, in request [Tue Feb 14 08:56:54.221817 2017] [wsgi:error] [pid 2001:tid 139696932181760] auth_headers = self.get_auth_headers(auth) [Tue Feb 14 08:56:54.221828 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/session.py", line 818, in get_auth_headers [Tue Feb 14 08:56:54.221840 2017] [wsgi:error] [pid 2001:tid 139696932181760] return auth.get_headers(self, **kwargs) [Tue Feb 14 08:56:54.221851 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/plugin.py", line 90, in get_headers [Tue Feb 14 08:56:54.221862 2017] [wsgi:error] [pid 2001:tid 139696932181760] token = self.get_token(session) [Tue Feb 14 08:56:54.221872 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/identity/base.py", line 90, in get_token [Tue Feb 14 08:56:54.221883 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self.get_access(session).auth_token [Tue Feb 14 08:56:54.221894 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/identity/base.py", line 136, in get_access [Tue Feb 14 08:56:54.221905 2017] [wsgi:error] [pid 2001:tid 139696932181760] self.auth_ref = self.get_auth_ref(session) [Tue Feb 14 08:56:54.221916 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/identity/generic/base.py", line 198, in get_auth_ref [Tue Feb 14 08:56:54.221927 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self._plugin.get_auth_ref(session, **kwargs) [Tue Feb 14 08:56:54.221938 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/identity/v3/base.py", line 167, in get_auth_ref [Tue Feb 14 08:56:54.221949 2017] [wsgi:error] [pid 2001:tid 139696932181760] authenticated=False, log=False, **rkwargs) [Tue Feb 14 08:56:54.221966 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/session.py", line 766, in post [Tue Feb 14 08:56:54.221979 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self.request(url, 'POST', **kwargs) [Tue Feb 14 08:56:54.221991 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/lib/python2.7/dist-packages/positional/_init_.py", line 101, in inner [Tue Feb 14 08:56:54.222002 2017] [wsgi:error] [pid 2001:tid 139696932181760] return wrapped(*args, **kwargs) [Tue Feb 14 08:56:54.222012 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/session.py", line 655, in request [Tue Feb 14 08:56:54.222023 2017] [wsgi:error] [pid 2001:tid 139696932181760] raise exceptions.from_response(resp, method, url) [Tue Feb 14 08:56:54.222034 2017] [wsgi:error] [pid 2001:tid 139696932181760] BadRequest: Expecting to find domain in user - the server could not comply with the request since it is either malformed or otherwise incorrect. The client is assumed to be in error. (HTTP 400) (Request-ID: req-a6e35892-721a-46d7-b0af-c799107a19ce) [Tue Feb 14 08:56:54.248586 2017] [wsgi:error] [pid 2001:tid 139696932181760] Failed to retrieve quota information [Tue Feb 14 08:56:54.248650 2017] [wsgi:error] [pid 2001:tid 139696932181760] Traceback (most recent call last): [Tue Feb 14 08:56:54.248678 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/dashboards/project/instances/tables.py", line 389, in allowed [Tue Feb 14 08:56:54.248696 2017] [wsgi:error] [pid 2001:tid 139696932181760] limits = api.nova.tenant_absolute_limits(request, reserved=True) [Tue Feb 14 08:56:54.248712 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/api/nova.py", line 949, in tenant_absolute_limits [Tue Feb 14 08:56:54.248742 2017] [wsgi:error] [pid 2001:tid 139696932181760] limits = novaclient(request).limits.get(reserved=reserved).absolute [Tue Feb 14 08:56:54.248759 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/novaclient/v2/limits.py", line 100, in get [Tue Feb 14 08:56:54.248775 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self._get("/limits%s" % query_string, "limits") [Tue Feb 14 08:56:54.248791 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/novaclient/base.py", line 351, in _get [Tue Feb 14 08:56:54.248811 2017] [wsgi:error] [pid 2001:tid 139696932181760] resp, body = self.api.client.get(url) [Tue Feb 14 08:56:54.248830 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/adapter.py", line 217, in get [Tue Feb 14 08:56:54.248851 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self.request(url, 'GET', **kwargs) [Tue Feb 14 08:56:54.248869 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/novaclient/client.py", line 74, in request [Tue Feb 14 08:56:54.248887 2017] [wsgi:error] [pid 2001:tid 139696932181760] **kwargs) [Tue Feb 14 08:56:54.248905 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/adapter.py", line 374, in request [Tue Feb 14 08:56:54.248924 2017] [wsgi:error] [pid 2001:tid 139696932181760] resp = super(LegacyJsonAdapter, self).request(*args, **kwargs) [Tue Feb 14 08:56:54.248941 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/adapter.py", line 142, in request [Tue Feb 14 08:56:54.248960 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self.session.request(url, method, **kwargs) [Tue Feb 14 08:56:54.248984 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/lib/python2.7/dist-packages/positional/_init_.py", line 101, in inner [Tue Feb 14 08:56:54.249004 2017] [wsgi:error] [pid 2001:tid 139696932181760] return wrapped(*args, **kwargs) [Tue Feb 14 08:56:54.249048 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/session.py", line 491, in request [Tue Feb 14 08:56:54.249069 2017] [wsgi:error] [pid 2001:tid 139696932181760] auth_headers = self.get_auth_headers(auth) [Tue Feb 14 08:56:54.249088 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/session.py", line 818, in get_auth_headers [Tue Feb 14 08:56:54.249108 2017] [wsgi:error] [pid 2001:tid 139696932181760] return auth.get_headers(self, **kwargs) [Tue Feb 14 08:56:54.249128 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/plugin.py", line 90, in get_headers [Tue Feb 14 08:56:54.249148 2017] [wsgi:error] [pid 2001:tid 139696932181760] token = self.get_token(session) [Tue Feb 14 08:56:54.249167 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/identity/base.py", line 90, in get_token [Tue Feb 14 08:56:54.249186 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self.get_access(session).auth_token [Tue Feb 14 08:56:54.249206 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/identity/base.py", line 136, in get_access [Tue Feb 14 08:56:54.249228 2017] [wsgi:error] [pid 2001:tid 139696932181760] self.auth_ref = self.get_auth_ref(session) [Tue Feb 14 08:56:54.249248 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/identity/generic/base.py", line 198, in get_auth_ref [Tue Feb 14 08:56:54.249281 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self._plugin.get_auth_ref(session, **kwargs) [Tue Feb 14 08:56:54.249301 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/identity/v3/base.py", line 167, in get_auth_ref [Tue Feb 14 08:56:54.249321 2017] [wsgi:error] [pid 2001:tid 139696932181760] authenticated=False, log=False, **rkwargs) [Tue Feb 14 08:56:54.249340 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/session.py", line 766, in post [Tue Feb 14 08:56:54.249360 2017] [wsgi:error] [pid 2001:tid 139696932181760] return self.request(url, 'POST', **kwargs) [Tue Feb 14 08:56:54.249381 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/lib/python2.7/dist-packages/positional/_init_.py", line 101, in inner [Tue Feb 14 08:56:54.249400 2017] [wsgi:error] [pid 2001:tid 139696932181760] return wrapped(*args, **kwargs) [Tue Feb 14 08:56:54.249420 2017] [wsgi:error] [pid 2001:tid 139696932181760] File "/usr/local/lib/python2.7/dist-packages/keystoneauth1/session.py", line 655, in request [Tue Feb 14 08:56:54.249442 2017] [wsgi:error] [pid 2001:tid 139696932181760] raise exceptions.from_response(resp, method, url) [Tue Feb 14 08:56:54.249464 2017] [wsgi:error] [pid 2001:tid 139696932181760] BadRequest: Expecting to find domain in user - the server could not comply with the request since it is either malformed or otherwise incorrect. The client is assumed to be in error. (HTTP 400) (Request-ID: req-99505edb-8d86-4ae8-92e4-9ca0e485030c)