Could not locate column in row for column 'volumes.id'

Bug #1396941 reported by Sasikanth Eda
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Cinder
Invalid
Undecided
Unassigned

Bug Description

Hi, I am trying to use LVM multi-backend configuration (devstack setup - ubuntu platform).

>>cinder.conf settings:

default_volume_type = lvmdriver-1
enabled_backends = lvmdriver-1,lvmdriver-2

[lvmdriver-1]
volume_group = stack-volumes-lvmdriver-1
volume_driver = cinder.volume.drivers.lvm.LVMISCSIDriver
volume_backend_name = lvmdriver-1

[lvmdriver-2]
volume_group = stack-volumes-lvmdriver-2
volume_driver = cinder.volume.drivers.lvm.LVMISCSIDriver
volume_backend_name = lvmdriver-2

With this configuration settings, was able to view the below errors in volume.log (where as with single backend LVM, was not able to find any error).

(attached volume.log for more details).

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 455, in fire_timers
    timer()
  File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/timer.py", line 58, in __call__
    cb(*args, **kw)
  File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", line 212, in main
    result = function(*args, **kwargs)
  File "/opt/stack/cinder/cinder/openstack/common/service.py", line 492, in run_service
    service.start()
  File "/opt/stack/cinder/cinder/service.py", line 142, in start
    self.manager.init_host()
  File "/usr/local/lib/python2.7/dist-packages/osprofiler/profiler.py", line 105, in wrapper
    return f(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/osprofiler/profiler.py", line 105, in wrapper
    return f(*args, **kwargs)
  File "/opt/stack/cinder/cinder/volume/manager.py", line 284, in init_host
    volumes = self.db.volume_get_all_by_host(ctxt, self.host)
  File "/opt/stack/cinder/cinder/db/api.py", line 222, in volume_get_all_by_host
    return IMPL.volume_get_all_by_host(context, host)
  File "/opt/stack/cinder/cinder/db/sqlalchemy/api.py", line 154, in wrapper
    return f(*args, **kwargs)
  File "/opt/stack/cinder/cinder/db/sqlalchemy/api.py", line 1273, in volume_get_all_by_host
    result = _volume_get_query(context).filter(or_(*conditions)).all()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2241, in all
    return list(self)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/loading.py", line 72, in instances
    rows = [process[0](row, None) for row in fetch]
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/loading.py", line 356, in _instance
    tuple([row[column] for column in pk_cols])
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/result.py", line 314, in _key_fallback
    expression._string_or_unprintable(key))
NoSuchColumnError: "Could not locate column in row for column 'volumes.id'"
2014-11-27 15:17:23.610 ERROR cinder.openstack.common.threadgroup [-] "Could not locate column in row for column 'volumes.id'"

Revision history for this message
Sasikanth Eda (sasikanth) wrote :
Changed in cinder:
assignee: nobody → Avinash (avinash-jalumuru)
krishna (leburu-reddy)
Changed in cinder:
assignee: Avinash (avinash-jalumuru) → krishna (leburu-reddy)
Revision history for this message
krishna (leburu-reddy) wrote :

Created the environment for the bug with multiple-backends (lvmdriver-1 and lvmdriver-2) as mentioned in the bug description. No errors found in the log of cinder volume. And this issue is not reproduced.

Cinder volumes are successfully created and volumeId of cinder is stored in the cinder database.
Could you please specify your version?

Mukul Patel (mukul18)
Changed in cinder:
assignee: krishna (leburu-reddy) → nobody
Mike Perez (thingee)
Changed in cinder:
status: New → Incomplete
Revision history for this message
Eduard Biceri-Matei (cubusbacau) wrote :
Download full text (6.0 KiB)

Installed Devstack K, setup multiple backend with custom volume type (custom cinder driver)

Local.conf:
cat /etc/cinder/cinder.conf
[DEFAULT]
glance_api_servers = http://x.x.x.x:9292
osapi_volume_workers = 4
logging_exception_prefix = %(color)s%(asctime)s.%(msecs)03d TRACE %(name)s %(instance)s
logging_debug_format_suffix = from (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d
logging_default_format_string = %(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [-%(color)s] %(instance)s%(color)s%(message)s
logging_context_format_string = %(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [%(request_id)s %(user_id)s %(project_id)s%(color)s] %(instance)s%(color)s%(message)s
rabbit_userid = stackrabbit
rabbit_password = rooter
rabbit_hosts = x.x.x.x
rpc_backend = rabbit
default_volume_type = lvmdriver-1
enabled_backends = lvmdriver-1, swift200
enable_v1_api = true
periodic_interval = 60
lock_path = /opt/stack/data/cinder
state_path = /opt/stack/data/cinder
osapi_volume_extension = cinder.api.contrib.standard_extensions
rootwrap_config = /etc/cinder/rootwrap.conf
api_paste_config = /etc/cinder/api-paste.ini
sql_connection = mysql://X:x@x.x.x.x/cinder?charset=utf8
iscsi_helper = tgtadm
my_ip = y.y.y.y
verbose = True
debug = True
auth_strategy = keystone
nova_catalog_admin_info = compute:nova:adminURL
nova_catalog_info = compute:nova:publicURL

[keystone_authtoken]
signing_dir = /var/cache/cinder
cafile = /opt/stack/data/ca-bundle.pem
auth_uri = http://y.y.y.y:5000
project_domain_id = default
project_name = service
user_domain_id = default
password = ******
username = cinder
auth_url = http://x.x.x.x:35357
auth_plugin = password

[lvmdriver-1]
iscsi_helper = tgtadm
volume_group = stack-volumes-lvmdriver-1
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
volume_backend_name = lvmdriver-1

[swift200]
volume_driver = cinder.volume.drivers.openvstorage.OVSVolumeDriver
volume_backend_name = swift200
vpool_name = swift200

Error in c-vol when starting, but it continues to run:
2015-03-12 09:29:32.211 ERROR cinder.openstack.common.loopingcall [req-cd31d4d8-62e5-455a-aa28-0991b114a01c None None] in fixed duration looping call
2015-03-12 09:29:32.211 TRACE cinder.openstack.common.loopingcall Traceback (most recent call last):
2015-03-12 09:29:32.211 TRACE cinder.openstack.common.loopingcall File "/opt/stack/cinder/cinder/openstack/common/loopingcall.py", line 81, in _inne
r
2015-03-12 09:29:32.211 TRACE cinder.openstack.common.loopingcall self.f(*self.args, **self.kw)
2015-03-12 09:29:32.211 TRACE cinder.openstack.common.loopingcall File "/opt/stack/cinder/cinder/service.py", line 291, in report_state
2015-03-12 09:29:32.211 TRACE cinder.openstack.common.loopingcall service_ref = db.service_get(ctxt, self.service_id)
2015-03-12 09:29:32.211 TRACE cinder.openstack.common.loopingcall File "/opt/stack/cinder/cinder/db/api.py", line 80, in service_get
2015-03-12 09:29:32.211 TRACE cinder.openstack.common.loopingcall return IMPL.service_get(context, service_id)
2015-03-12 09:29:32.211 TRACE cinder.openstack.common.loopingcall File "/opt/stack/cinder/cinder/db/sqlalchemy/api.py", line 159, in wrapper
2015-03-12 09:29:3...

Read more...

Changed in cinder:
assignee: nobody → Vilobh Meshram (vilobhmm)
Revision history for this message
Sean McGinnis (sean-mcginnis) wrote :

Automatically unassigning due to inactivity.

Changed in cinder:
assignee: Vilobh Meshram (vilobhmm) → nobody
Revision history for this message
Sean McGinnis (sean-mcginnis) wrote :

No activity for quite some time and I have not observed this failure. Whatever it was appears to have been fixed. If still seen please reopen.

Changed in cinder:
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.