Bug 1233945 - Errors are show navigating to cinder volume GUI
Summary: Errors are show navigating to cinder volume GUI
Keywords:
Status: CLOSED DUPLICATE of bug 1233956
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: python-django-horizon
Version: 7.0 (Kilo)
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ga
: 7.0 (Kilo)
Assignee: Matthias Runge
QA Contact: Ido Ovadia
URL:
Whiteboard:
: 1232780 1235887 (view as bug list)
Depends On:
Blocks: 1238779
TreeView+ depends on / blocked
 
Reported: 2015-06-19 19:01 UTC by Chris Dearborn
Modified: 2015-07-07 14:31 UTC (History)
20 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-07-07 14:31:24 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1468315 0 None None None Never

Description Chris Dearborn 2015-06-19 19:01:18 UTC
Description of problem:
The following errors are displayed when navigating to cinder volumes:

Error: Unable to retrieve volume list.
Error: Unable to retrieve snapshot list.

Version-Release number of selected component (if applicable):


How reproducible:
Navigate to System->Volumes

Steps to Reproduce:
1. Navigate to System->Volumes
2. Note 2 errors listed above are displayed in GUI

Actual results:
Above errors are displayed in GUI

Expected results:
No errors should be displayed in GUI

Additional info:
The following errors appear in /var/log/horizon/horizon.log:

2015-06-19 12:53:17,916 22500 WARNING openstack_dashboard.api.cinder Cinder v2 requested but no 'volumev2' service type available in Keystone catalog.
2015-06-19 12:53:17,917 22500 WARNING horizon.exceptions Recoverable error: Invalid URL '/os-volume-transfer/detail': No schema supplied. Perhaps you meant http:///os-volume-transfer/detail?
2015-06-19 12:53:17,946 22500 WARNING horizon.exceptions Recoverable error: Invalid URL '/snapshots/detail?all_tenants=True': No schema supplied. Perhaps you meant http:///snapshots/detail?all_tenants=True?

Comment 4 Matthias Runge 2015-06-24 08:21:28 UTC
I can reproduce this behaviour by manually deleting cinder v2 endpoint from deployment with packstack.

A more detailed stacktrace is this:

2015-06-24 08:12:59,579 11778 ERROR horizon.tables.base Error while checking action permissions.
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/horizon/tables/base.py", line 1260, in _filter_action
    return action._allowed(request, datum) and row_matched
  File "/usr/lib/python2.7/site-packages/horizon/tables/actions.py", line 136, in _allowed
    self.allowed(request, datum))
  File "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/dashboards/project/volumes/volumes/tables.py", line 108, in allowed
    limits = api.cinder.tenant_absolute_limits(request)
  File "/usr/lib/python2.7/site-packages/horizon/utils/memoized.py", line 90, in wrapped
    value = cache[key] = func(*args, **kwargs)
  File "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/api/cinder.py", line 547, in tenant_absolute_limits
    limits = cinderclient(request).limits.get().absolute
  File "/usr/lib/python2.7/site-packages/cinderclient/v2/limits.py", line 91, in get
    return self._get("/limits", "limits")
  File "/usr/lib/python2.7/site-packages/cinderclient/base.py", line 149, in _get
    resp, body = self.api.client.get(url)
  File "/usr/lib/python2.7/site-packages/cinderclient/client.py", line 302, in get
    return self._cs_request(url, 'GET', **kwargs)
  File "/usr/lib/python2.7/site-packages/cinderclient/client.py", line 269, in _cs_request
    **kwargs)
  File "/usr/lib/python2.7/site-packages/cinderclient/client.py", line 239, in request
    **kwargs)
  File "/usr/lib/python2.7/site-packages/requests/api.py", line 50, in request
    response = session.request(method=method, url=url, **kwargs)
  File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 451, in request
    prep = self.prepare_request(req)
  File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 382, in prepare_request
    hooks=merge_hooks(request.hooks, self.hooks),
  File "/usr/lib/python2.7/site-packages/requests/models.py", line 304, in prepare
    self.prepare_url(url, params)
  File "/usr/lib/python2.7/site-packages/requests/models.py", line 362, in prepare_url
    to_native_string(url, 'utf8')))
MissingSchema: Invalid URL '/limits': No schema supplied. Perhaps you meant http:///limits?
2015-06-24 08:13:04,212 11777 WARNING openstack_dashboard.api.cinder Cinder v2 requested but no 'volumev2' service type available in Keystone catalog.
2015-06-24 08:13:04,213 11777 WARNING horizon.exceptions Recoverable error: Invalid URL '/snapshots/detail': No schema supplied. Perhaps you meant http:///snapshots/detail?

Comment 5 Mike Burns 2015-06-24 11:04:31 UTC
From a director standpoint, this might be resolved already.  Missing Cinder v2 was just recently fixed in bug 1233956

Comment 6 Matthias Runge 2015-06-24 11:08:57 UTC
This sounds like a discrepancy between packstack based install and OSP based install; this is then most likely a duplicate of bug 1233956

Cinder upstream is moving to deprecating cinder v1.

using Cinder v2 is default in horizon.

Comment 7 Lon Hohberger 2015-06-24 16:29:04 UTC
This might be a WONTFIX candidate.  If v1 API is deprecated upstream, then fixing this in Horizon might be a "don't care".  One possible issue is upgrades which might bear some investigation.

Comment 8 Matthias Runge 2015-06-24 18:41:34 UTC
*** Bug 1232780 has been marked as a duplicate of this bug. ***

Comment 9 Matthias Runge 2015-06-26 09:59:20 UTC
*** Bug 1235887 has been marked as a duplicate of this bug. ***

Comment 10 Matthias Runge 2015-07-07 14:04:33 UTC
My POV on this bug:

There has been a deployment made by OSP Director, which contained bug 1233956 .
Thus, the deployment did not had a volumev2 endpoint. That director bug has been fixed, later installs now work with Horizon and volumes are shown fine.


Horizon moved to use volumev2 as default endpoint (i.e. Cinder API V2). Cinder V1 is deprecated by cinder upstream.

Taking https://bugzilla.redhat.com/show_bug.cgi?id=1233945#c7 into account, I would open an RFE on Horizon to support cinder volume v1 only (without v2).

Comment 11 Matthias Runge 2015-07-07 14:10:33 UTC
With the root cause of this was fixed in director and didn't exist in packstack, we should close this bug or at least remove the blocker.

Comment 12 Jon Schlueter 2015-07-07 14:31:24 UTC
The root cause of this bug was a director bug 1233956 where it didn't configure cinder v2 interface by default.  Investigation of this bug identified that horizon still has some possible improvements if cinder v2 api endpoints are not present but that's a different issue than a blocker.

Chris Dearborn please re-open bug if this is still an issue to you.

*** This bug has been marked as a duplicate of bug 1233956 ***


Note You need to log in before you can comment on or make changes to this bug.