← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1339039] [NEW] ERROR: Store for scheme glance.store.rbd.Store not found

 

Public bug reported:

glance-api is unable to initilize rbd storage backend.

Running glance-api with only rbd backend configured and disabling all
the other backends causes the service to exit with the following error:

root@control:~# glance-api
  2 2014-07-07 17:48:03.950 1874 DEBUG glance.store [-] Attempting to import store glance.store.rbd.Store _get_store_class /usr/lib/python2.7/dist-packages/gl    ance/store/__init__.py:168
  3 2014-07-07 17:48:03.955 1874 DEBUG glance.store [-] Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) create_stores /usr/lib/python    2.7/dist-packages/glance/store/__init__.py:210
  4 2014-07-07 17:48:03.955 1874 DEBUG glance.store.base [-] Late loading location class glance.store.rbd.StoreLocation get_store_location_class /usr/lib/pyth    on2.7/dist-packages/glance/store/base.py:80
  5 2014-07-07 17:48:03.956 1874 DEBUG glance.store.location [-] Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class    ': <class 'glance.store.rbd.StoreLocation'>} register_scheme_map /usr/lib/python2.7/dist-packages/glance/store/location.py:86
  6 2014-07-07 17:48:03.958 1874 DEBUG glance.api.policy [-] Loading policy from /etc/glance/policy.json _read_policy_file /usr/lib/python2.7/dist-packages/gl    ance/api/policy.py:106
  7 2014-07-07 17:48:03.959 1874 DEBUG glance.api.policy [-] Loaded policy rules: {u'get_task': '@', u'get_image_location': '@', u'add_image': '@', u'modify_i    mage': '@', u'manage_image_cache': 'role:admin', u'delete_member': '@', u'get_images': '@', u'delete_image': '@', u'publicize_image': '@', u'get_member':     '@', u'add_member': '@', u'set_image_location': '@', u'get_image': '@', u'modify_member': '@', u'context_is_admin': 'role:admin', u'upload_image': '@', u'    modify_task': '@', u'get_members': '@', u'get_tasks': '@', u'add_task': '@', u'default': '@', u'delete_image_location': '@', u'copy_from': '@', u'download    _image': '@'} load_rules /usr/lib/python2.7/dist-packages/glance/api/policy.py:85
  8 ERROR: Store for scheme glance.store.rbd.Store not found

root@control:~# cat /etc/glance/glance-api.conf
[...]
default_store = glance.store.rbd.Store
known_stores = glance.store.rbd.Store
[...]

root@control:~# dpkg -l | grep glance
ii  glance                              1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - Daemons
ii  glance-api                          1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - API
ii  glance-common                       1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - Common
ii  glance-registry                     1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - Registry
ii  python-glance                       1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - Python library
ii  python-glanceclient                 1:0.12.0-0ubuntu1                  all          Client library for Openstack glance server.

After some time of debugging I figured out, that the problem is cased by
the function "get_store_from_scheme(context, scheme, loc=None)".  The
argument "context" is evaluated to "glance.store.rbd.Store" not to
"rbd".

Applying the attached quick and dirty fix patch has solved the problem.

Further investigation needed.

** Affects: glance
     Importance: Undecided
         Status: New

** Patch added: "glance.store.__init__.py.patch"
   https://bugs.launchpad.net/bugs/1339039/+attachment/4147975/+files/glance.store.__init__.py.patch

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Glance.
https://bugs.launchpad.net/bugs/1339039

Title:
  ERROR: Store for scheme glance.store.rbd.Store not found

Status in OpenStack Image Registry and Delivery Service (Glance):
  New

Bug description:
  glance-api is unable to initilize rbd storage backend.

  Running glance-api with only rbd backend configured and disabling all
  the other backends causes the service to exit with the following
  error:

  root@control:~# glance-api
    2 2014-07-07 17:48:03.950 1874 DEBUG glance.store [-] Attempting to import store glance.store.rbd.Store _get_store_class /usr/lib/python2.7/dist-packages/gl    ance/store/__init__.py:168
    3 2014-07-07 17:48:03.955 1874 DEBUG glance.store [-] Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) create_stores /usr/lib/python    2.7/dist-packages/glance/store/__init__.py:210
    4 2014-07-07 17:48:03.955 1874 DEBUG glance.store.base [-] Late loading location class glance.store.rbd.StoreLocation get_store_location_class /usr/lib/pyth    on2.7/dist-packages/glance/store/base.py:80
    5 2014-07-07 17:48:03.956 1874 DEBUG glance.store.location [-] Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class    ': <class 'glance.store.rbd.StoreLocation'>} register_scheme_map /usr/lib/python2.7/dist-packages/glance/store/location.py:86
    6 2014-07-07 17:48:03.958 1874 DEBUG glance.api.policy [-] Loading policy from /etc/glance/policy.json _read_policy_file /usr/lib/python2.7/dist-packages/gl    ance/api/policy.py:106
    7 2014-07-07 17:48:03.959 1874 DEBUG glance.api.policy [-] Loaded policy rules: {u'get_task': '@', u'get_image_location': '@', u'add_image': '@', u'modify_i    mage': '@', u'manage_image_cache': 'role:admin', u'delete_member': '@', u'get_images': '@', u'delete_image': '@', u'publicize_image': '@', u'get_member':     '@', u'add_member': '@', u'set_image_location': '@', u'get_image': '@', u'modify_member': '@', u'context_is_admin': 'role:admin', u'upload_image': '@', u'    modify_task': '@', u'get_members': '@', u'get_tasks': '@', u'add_task': '@', u'default': '@', u'delete_image_location': '@', u'copy_from': '@', u'download    _image': '@'} load_rules /usr/lib/python2.7/dist-packages/glance/api/policy.py:85
    8 ERROR: Store for scheme glance.store.rbd.Store not found

  root@control:~# cat /etc/glance/glance-api.conf
  [...]
  default_store = glance.store.rbd.Store
  known_stores = glance.store.rbd.Store
  [...]

  root@control:~# dpkg -l | grep glance
  ii  glance                              1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - Daemons
  ii  glance-api                          1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - API
  ii  glance-common                       1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - Common
  ii  glance-registry                     1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - Registry
  ii  python-glance                       1:2014.1-0ubuntu1                  all          OpenStack Image Registry and Delivery Service - Python library
  ii  python-glanceclient                 1:0.12.0-0ubuntu1                  all          Client library for Openstack glance server.

  After some time of debugging I figured out, that the problem is cased
  by the function "get_store_from_scheme(context, scheme, loc=None)".
  The argument "context" is evaluated to "glance.store.rbd.Store" not to
  "rbd".

  Applying the attached quick and dirty fix patch has solved the
  problem.

  Further investigation needed.

To manage notifications about this bug go to:
https://bugs.launchpad.net/glance/+bug/1339039/+subscriptions


Follow ups

References