[Openstack] [nova] using nova.scheduler.HostManager() (newbie question)

Ed - eduard.barrera at gmail.com
Mon Mar 5 16:42:46 UTC 2018


Hi all,

I'm trying to get started with openstack code. I'm using the
nova.tests examples as they seems simple. I tried it on a packstack
newton (it works) and on some TripleO deployments (Pike) , but it
doesn't work :( Below you can find the code and the error:

~~~
from oslo_config import cfg
from oslo_context import context
from oslo_log import log as logging
from nova.common import config
from nova import version
from oslo_log import log

from nova import context as nova_context

from nova.scheduler import host_manager
from nova import objects

objects.register_all()

CONF = cfg.CONF
DOMAIN = "demo"


CONF("", project='nova', version=version.version_string(),
default_config_files=None)
manager=host_manager.HostManager()

ctx=nova_context.RequestContext()
print  manager.get_all_host_states(ctx)
~~~

~~~
2018-03-05 16:37:47.654 628255 CRITICAL demo
[req-43e79d3d-6032-44a8-8cfa-ef884d009cbc - - - - -] Unhandled error:
ProgrammingError: (pymysql.err.ProgrammingError) (1146, u"Table
'nova.cell_mappings' doesn't exist") [SQL: u'SELECT
cell_mappings.created_at AS cell_mappings_created_at,
cell_mappings.updated_at AS cell_mappings_updated_at, cell_mappings.id
AS cell_mappings_id, cell_mappings.uuid AS cell_mappings_uuid,
cell_mappings.name AS cell_mappings_name, cell_mappings.transport_url
AS cell_mappings_transport_url, cell_mappings.database_connection AS
cell_mappings_database_connection \nFROM cell_mappings ORDER BY
cell_mappings.id ASC']
2018-03-05 16:37:47.654 628255 ERROR demo Traceback (most recent call last):
2018-03-05 16:37:47.654 628255 ERROR demo   File "context.py", line
34, in <module>
2018-03-05 16:37:47.654 628255 ERROR demo     print
manager.get_all_host_states(ctx)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/nova/scheduler/host_manager.py",
line 656, in get_all_host_states
2018-03-05 16:37:47.654 628255 ERROR demo     self._load_cells(context)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/nova/scheduler/host_manager.py",
line 627, in _load_cells
2018-03-05 16:37:47.654 628255 ERROR demo     self.cells =
objects.CellMappingList.get_all(context)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/oslo_versionedobjects/base.py", line
184, in wrapper
2018-03-05 16:37:47.654 628255 ERROR demo     result = fn(cls,
context, *args, **kwargs)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/nova/objects/cell_mapping.py", line
137, in get_all
2018-03-05 16:37:47.654 628255 ERROR demo     db_mappings =
cls._get_all_from_db(context)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/oslo_db/sqlalchemy/enginefacade.py",
line 979, in wrapper
2018-03-05 16:37:47.654 628255 ERROR demo     return fn(*args, **kwargs)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/nova/objects/cell_mapping.py", line
133, in _get_all_from_db
2018-03-05 16:37:47.654 628255 ERROR demo
asc(api_models.CellMapping.id)).all()
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/orm/query.py", line
2703, in all
2018-03-05 16:37:47.654 628255 ERROR demo     return list(self)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/orm/query.py", line
2855, in __iter__
2018-03-05 16:37:47.654 628255 ERROR demo     return
self._execute_and_instances(context)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/orm/query.py", line
2878, in _execute_and_instances
2018-03-05 16:37:47.654 628255 ERROR demo     result =
conn.execute(querycontext.statement, self._params)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line
945, in execute
2018-03-05 16:37:47.654 628255 ERROR demo     return meth(self,
multiparams, params)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/sql/elements.py", line
263, in _execute_on_connection
2018-03-05 16:37:47.654 628255 ERROR demo     return
connection._execute_clauseelement(self, multiparams, params)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line
1053, in _execute_clauseelement
2018-03-05 16:37:47.654 628255 ERROR demo     compiled_sql, distilled_params
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line
1189, in _execute_context
2018-03-05 16:37:47.654 628255 ERROR demo     context)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line
1398, in _handle_dbapi_exception
2018-03-05 16:37:47.654 628255 ERROR demo
util.raise_from_cause(newraise, exc_info)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/util/compat.py", line
203, in raise_from_cause
2018-03-05 16:37:47.654 628255 ERROR demo     reraise(type(exception),
exception, tb=exc_tb, cause=cause)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line
1182, in _execute_context
2018-03-05 16:37:47.654 628255 ERROR demo     context)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/default.py",
line 470, in do_execute
2018-03-05 16:37:47.654 628255 ERROR demo
cursor.execute(statement, parameters)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/pymysql/cursors.py", line 166, in
execute
2018-03-05 16:37:47.654 628255 ERROR demo     result = self._query(query)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/pymysql/cursors.py", line 322, in
_query
2018-03-05 16:37:47.654 628255 ERROR demo     conn.query(q)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/pymysql/connections.py", line 856,
in query
2018-03-05 16:37:47.654 628255 ERROR demo     self._affected_rows =
self._read_query_result(unbuffered=unbuffered)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/pymysql/connections.py", line 1057,
in _read_query_result
2018-03-05 16:37:47.654 628255 ERROR demo     result.read()
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/pymysql/connections.py", line 1340,
in read
2018-03-05 16:37:47.654 628255 ERROR demo     first_packet =
self.connection._read_packet()
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/pymysql/connections.py", line 1014,
in _read_packet
2018-03-05 16:37:47.654 628255 ERROR demo     packet.check_error()
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/pymysql/connections.py", line 393,
in check_error
2018-03-05 16:37:47.654 628255 ERROR demo
err.raise_mysql_exception(self._data)
2018-03-05 16:37:47.654 628255 ERROR demo   File
"/usr/lib/python2.7/site-packages/pymysql/err.py", line 107, in
raise_mysql_exception
2018-03-05 16:37:47.654 628255 ERROR demo     raise errorclass(errno, errval)
2018-03-05 16:37:47.654 628255 ERROR demo ProgrammingError:
(pymysql.err.ProgrammingError) (1146, u"Table 'nova.cell_mappings'
doesn't exist") [SQL: u'SELECT cell_mappings.created_at AS
cell_mappings_created_at, cell_mappings.updated_at AS
cell_mappings_updated_at, cell_mappings.id AS cell_mappings_id,
cell_mappings.uuid AS cell_mappings_uuid, cell_mappings.name AS
cell_mappings_name, cell_mappings.transport_url AS
cell_mappings_transport_url, cell_mappings.database_connection AS
cell_mappings_database_connection \nFROM cell_mappings ORDER BY
cell_mappings.id ASC']
2018-03-05 16:37:47.654 628255 ERROR demo
~~~

print  manager.get_all_host_states(ctx) is causing the the previous
trace. How can I avoid getting the previous errors, what is wrong ?

Thank you very much in advance.



More information about the Openstack mailing list