[Openstack] Essex Dashboard: KeyError at /nova/instances_and_volumes/

Yong Jiang jiangyong.hn at gmail.com
Tue Nov 13 07:17:54 UTC 2012


This bug is reported at https://bugs.launchpad.net/horizon/+bug/1053488,
one potential way to fix it is proposed at
https://review.openstack.org/14801

2012/11/13 Gabriel Hurley <Gabriel.Hurley at nebula.com>

>  That is actually the manifestation of a bug in Nova that was addressed
> very late in Folsom. The short version is that Nova inconsistently scoped
> the ownership of volumes vs. instances so it was possible for an admin user
> to view a mixed set of resources which could lead to the scenario you hit
> where things are in one list but not the other. I’m not sure if there’s any
> plans to backport the fixes from Nova. A patch could probably be worked up
> for the stable/essex Horizon branch that would avoid the keyerror (see the
> state of that code in Folsom:
> https://github.com/openstack/horizon/blob/stable/folsom/horizon/dashboards/nova/volumes/views.py#L68), but it would be papering over what is inherently a broken situation in
> Nova.****
>
> ** **
>
> My advice from back in the Essex days was that you should be wary of using
> an “admin” user in the “Project” dashboard since the underlying APIs didn’t
> handle it correctly.****
>
> ** **
>
> Alternatively, the Folsom Horizon release is actually backwards-compatible
> to an Essex stack, so you could try running Folsom Horizon which is less
> subject to many issues.****
>
> ** **
>
> Hope one of these suggestions helps!****
>
> ** **
>
> **-          **Gabriel****
>
> ** **
>
> *From:* openstack-bounces+gabriel.hurley=nebula.com at lists.launchpad.net[mailto:
> openstack-bounces+gabriel.hurley=nebula.com at lists.launchpad.net] *On
> Behalf Of *Christian Parpart
> *Sent:* Monday, November 12, 2012 3:37 AM
> *To:* <openstack at lists.launchpad.net>
> *Subject:* [Openstack] Essex Dashboard: KeyError at
> /nova/instances_and_volumes/****
>
> ** **
>
> Hey all,****
>
> ** **
>
> since quite some weeks I am getting an error page instead of the
> "Instances and Volumes" page in the****
>
> Essex Horizon Dashboard with the above title and the below detailed error
> output:****
>
> ** **
>  Environment:**** ** ** Request Method: GET**** Request URL:
> http://controller.rz.dawanda.com/nova/instances_and_volumes/**** ** ** Django
> Version: 1.3.1**** Python Version: 2.7.3**** Installed Applications:****
> ['openstack_dashboard',****  'django.contrib.sessions',****
>  'django.contrib.messages',****  'django.contrib.staticfiles',****
>  'django_nose',****  'horizon',****  'horizon.dashboards.nova',****
>  'horizon.dashboards.syspanel',****  'horizon.dashboards.settings']**** Installed
> Middleware:**** ('django.middleware.common.CommonMiddleware',****
>  'django.middleware.csrf.CsrfViewMiddleware',****
>  'django.contrib.sessions.middleware.SessionMiddleware',****
>  'django.contrib.messages.middleware.MessageMiddleware',****
>  'openstack_dashboard.middleware.DashboardLogUnhandledExceptionsMiddleware',
> ****  'horizon.middleware.HorizonMiddleware',****
>  'django.middleware.doc.XViewMiddleware',****
>  'django.middleware.locale.LocaleMiddleware')**** ** ** ** ** Traceback:**
> ** File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py"
> in get_response****   111.                         response =
> callback(request, *callback_args, **callback_kwargs)**** File
> "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec****   40.
>         return view_func(request, *args, **kwargs)**** File
> "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec****   55.
>             return view_func(request, *args, **kwargs)**** File
> "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec****   40.
>         return view_func(request, *args, **kwargs)**** File
> "/usr/lib/python2.7/dist-packages/django/views/generic/base.py" in view***
> *   47.             return self.dispatch(request, *args, **kwargs)**** File
> "/usr/lib/python2.7/dist-packages/django/views/generic/base.py" in dispatch
> ****   68.         return handler(request, *args, **kwargs)**** File
> "/usr/lib/python2.7/dist-packages/horizon/tables/views.py" in get****
> 105.         handled = self.construct_tables()**** File
> "/usr/lib/python2.7/dist-packages/horizon/tables/views.py" in
> construct_tables****   96.             handled = self.handle_table(table)*
> *** File "/usr/lib/python2.7/dist-packages/horizon/tables/views.py" in
> handle_table****   68.         data = self._get_data_dict()**** File
> "/usr/lib/python2.7/dist-packages/horizon/tables/views.py" in _get_data_dict
> ****   37.                 self._data[table._meta.name] = data_func()**** File
> "/usr/lib/python2.7/dist-packages/horizon/dashboards/nova/instances_and_volumes/views.py"
> in get_volumes_data****   74.                     att['instance'] =
> instances[att['server_id']]**** ** ** Exception Type: KeyError at
> /nova/instances_and_volumes/**** Exception Value:
> u'8aa2989e-85ea-4975-b81b-04d06dbf8013'****
>
>
> ----------------------------------------------------------------------------------------------------------------------------
> ****
>
> ** **
>
> now I wonder in how far that is a bug in the software and/or whether I
> have an invalid entry in my nova database that****
>
> I can fix by hand.****
>
> ** **
>
> if so, does anyone know how to actually work around this? I do really need
> this (now not working) page :-)****
>
> ** **
>
> Regards,****
>
> Christian Parpart.****
>
> ** **
>
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack at lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20121113/0f5ec2fe/attachment.html>


More information about the Openstack mailing list