← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1441164] [NEW] Error in migration 066_fixup_service_name_value.py

 

Public bug reported:

Migration script 066_fixup_service_name_value.py select all data from
`service` table and call jsonutils.loads to `extra` column value. This
column was created in migration 044 as nullable, so it may be a
situation, when this script tries to call jsonutils.loads(None). In this
case, migration will fail with the following traceback

  File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/api.py", line 186, in upgrade
    return _migrate(url, repository, version, upgrade=True, err=err, **opts)
  File "<string>", line 2, in _migrate
  File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/util/__init__.py", line 160, in with_engine
    return f(*a, **kw)
  File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/api.py", line 366, in _migrate
    schema.runchange(ver, change, changeset.step)
  File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/schema.py", line 93, in runchange
    change.run(self.engine, step)
  File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/script/py.py", line 148, in run
    script_func(engine)
  File "/home/vsergeev/sandbox/keystone/keystone/common/sql/migrate_repo/versions/066_fixup_service_name_value.py", line 25, in upgrade
    extra_dict = jsonutils.loads(service.extra)
  File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/oslo_serialization/jsonutils.py", line 215, in loads
    return json.loads(encodeutils.safe_decode(s, encoding), **kwargs)
  File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/oslo_utils/encodeutils.py", line 33, in safe_decode
    raise TypeError("%s can't be decoded" % type(text))
TypeError: <type 'NoneType'> can't be decoded

** Affects: keystone
     Importance: Undecided
         Status: New


** Tags: db

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

Title:
  Error in migration 066_fixup_service_name_value.py

Status in OpenStack Identity (Keystone):
  New

Bug description:
  Migration script 066_fixup_service_name_value.py select all data from
  `service` table and call jsonutils.loads to `extra` column value. This
  column was created in migration 044 as nullable, so it may be a
  situation, when this script tries to call jsonutils.loads(None). In
  this case, migration will fail with the following traceback

    File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/api.py", line 186, in upgrade
      return _migrate(url, repository, version, upgrade=True, err=err, **opts)
    File "<string>", line 2, in _migrate
    File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/util/__init__.py", line 160, in with_engine
      return f(*a, **kw)
    File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/api.py", line 366, in _migrate
      schema.runchange(ver, change, changeset.step)
    File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/schema.py", line 93, in runchange
      change.run(self.engine, step)
    File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/migrate/versioning/script/py.py", line 148, in run
      script_func(engine)
    File "/home/vsergeev/sandbox/keystone/keystone/common/sql/migrate_repo/versions/066_fixup_service_name_value.py", line 25, in upgrade
      extra_dict = jsonutils.loads(service.extra)
    File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/oslo_serialization/jsonutils.py", line 215, in loads
      return json.loads(encodeutils.safe_decode(s, encoding), **kwargs)
    File "/home/vsergeev/sandbox/keystone/.tox/py27/local/lib/python2.7/site-packages/oslo_utils/encodeutils.py", line 33, in safe_decode
      raise TypeError("%s can't be decoded" % type(text))
  TypeError: <type 'NoneType'> can't be decoded

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


Follow ups

References