The reason why the status of volume stuck to "attaching" is that there is error raised from the log of horizon, when I attach the volume to an instance. [Mon May 28 11:50:50 2012] [error] REQ: curl -i http://9.119.148.119:8776/v1/d3e33bd38cac41aa816925488148494c/volumes/b8a69148-44d5-45 f3-8a07-2a9fd3a8e2e9 -X GET -H "X-Auth-Project-Id: d3e33bd38cac41aa816925488148494c" -H "User-Agent: python-novaclient" -H "Accept: ap plication/json" -H "X-Auth-Token: 59b2eed030e34e9e9c083a3a24c6bcb8" [Mon May 28 11:50:50 2012] [error] [Mon May 28 11:50:50 2012] [error] RESP:{'status': '200', 'content-length': '459', 'content-location': u'http://9.119.148.119:8776/v1/ d3e33bd38cac41aa816925488148494c/volumes/b8a69148-44d5-45f3-8a07-2a9fd3a8e2e9', 'x-compute-request-id': 'req-fe2a96e6-191f-4fc9-bfe0-4 8a1754955a9', 'date': 'Mon, 28 May 2012 03:50:50 GMT', 'content-type': 'application/json'} {"volume": {"status": "in-use", "display_na me": "vol1", "attachments": [{"device": "/dev/vdc", "server_id": "a5d941a3-b0cb-43ed-b5c9-3f9731f071be", "id": "b8a69148-44d5-45f3-8a0 7-2a9fd3a8e2e9", "volume_id": "b8a69148-44d5-45f3-8a07-2a9fd3a8e2e9"}], "availability_zone": "nova", "created_at": "2012-05-28 03:48:2 6", "display_description": "", "volume_type": "None", "snapshot_id": null, "metadata": {}, "id": "b8a69148-44d5-45f3-8a07-2a9fd3a8e2e9 ", "size": 1}} [Mon May 28 11:50:50 2012] [error] [Mon May 28 11:50:50 2012] [error] CRITICAL:openstack_dashboard:Unhandled Exception in of type "" in dashb oard. [Mon May 28 11:50:50 2012] [error] Traceback (most recent call last): [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 111, in get_resp onse [Mon May 28 11:50:50 2012] [error] response = callback(request, *callback_args, **callback_kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 40, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 55, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 40, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py", line 48, in view [Mon May 28 11:50:50 2012] [error] return self.dispatch(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py", line 69, in dispatch [Mon May 28 11:50:50 2012] [error] return handler(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/views.py", line 105, in ge t [Mon May 28 11:50:50 2012] [error] handled = self.construct_tables() [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/views.py", line 91, in con struct_tables [Mon May 28 11:50:50 2012] [error] preempted = table.maybe_preempt() [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 982, in may be_preempt [Mon May 28 11:50:50 2012] [error] error = exceptions.handle(request, ignore=True) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 978, in may be_preempt [Mon May 28 11:50:50 2012] [error] new_row.load_cells(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 365, in loa d_cells [Mon May 28 11:50:50 2012] [error] data = column.get_data(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 221, in get _data [Mon May 28 11:50:50 2012] [error] data = self.transform(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/dashboards/nova/instances_and_vol umes/volumes/tables.py", line 96, in get_attachment [Mon May 28 11:50:50 2012] [error] "name": attachment["instance"].name, [Mon May 28 11:50:50 2012] [error] KeyError: 'instance' [Mon May 28 11:50:50 2012] [error] ERROR:django.request:Internal Server Error: /nova/instances_and_volumes/ [Mon May 28 11:50:50 2012] [error] Traceback (most recent call last): [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 111, in get_response [Mon May 28 11:50:50 2012] [error] response = callback(request, *callback_args, **callback_kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 40, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 55, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 40, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py", line 48, in view [Mon May 28 11:50:50 2012] [error] return self.dispatch(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py", line 69, in dispatch [Mon May 28 11:50:50 2012] [error] return handler(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/views.py", line 105, in get [Mon May 28 11:50:50 2012] [error] handled = self.construct_tables() [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/views.py", line 91, in construct_tables [Mon May 28 11:50:50 2012] [error] preempted = table.maybe_preempt() [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 982, in maybe_preempt [Mon May 28 11:50:50 2012] [error] error = exceptions.handle(request, ignore=True) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 978, in maybe_preempt [Mon May 28 11:50:50 2012] [error] new_row.load_cells(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 365, in load_cells [Mon May 28 11:50:50 2012] [error] data = column.get_data(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 221, in get_data [Mon May 28 11:50:50 2012] [error] data = self.transform(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/dashboards/nova/instances_and_volumes/volumes/tables.py", line 96, in get_attachment [Mon May 28 11:50:50 2012] [error] "name": attachment["instance"].name, [Mon May 28 11:50:50 2012] [error] KeyError: 'instance' [Mon May 28 11:50:50 2012] [error] ERROR:django.request:Internal Server Error: /nova/instances_and_volumes/ [Mon May 28 11:50:50 2012] [error] Traceback (most recent call last): [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 111, in get_response [Mon May 28 11:50:50 2012] [error] response = callback(request, *callback_args, **callback_kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 40, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 55, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/decorators.py", line 40, in dec [Mon May 28 11:50:50 2012] [error] return view_func(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py", line 48, in view [Mon May 28 11:50:50 2012] [error] return self.dispatch(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py", line 69, in dispatch [Mon May 28 11:50:50 2012] [error] return handler(request, *args, **kwargs) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/views.py", line 105, in get [Mon May 28 11:50:50 2012] [error] handled = self.construct_tables() [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/views.py", line 91, in construct_tables [Mon May 28 11:50:50 2012] [error] preempted = table.maybe_preempt() [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 982, in maybe_preempt [Mon May 28 11:50:50 2012] [error] error = exceptions.handle(request, ignore=True) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 978, in maybe_preempt [Mon May 28 11:50:50 2012] [error] new_row.load_cells(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 365, in load_cells [Mon May 28 11:50:50 2012] [error] data = column.get_data(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/tables/base.py", line 221, in get_data [Mon May 28 11:50:50 2012] [error] data = self.transform(datum) [Mon May 28 11:50:50 2012] [error] File "/opt/stack/horizon/openstack_dashboard/wsgi/../../horizon/dashboards/nova/instances_and_volumes/volumes/tables.py", line 96, in get_attachment [Mon May 28 11:50:50 2012] [error] "name": attachment["instance"].name, [Mon May 28 11:50:50 2012] [error] KeyError: 'instance'