Activity log for bug #1296589

Date Who What changed Old value New value Message
2014-03-24 09:10:54 Erno Kuvaja bug added bug
2014-03-24 09:11:15 Erno Kuvaja glance: assignee Erno Kuvaja (jokke)
2014-03-24 09:56:22 Erno Kuvaja glance: status New In Progress
2014-03-26 11:15:36 Erno Kuvaja description There is set([]) passed to json.dumps() which is not parseable: self.func(req, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/glance/common/wsgi.py", line 625, in __call__ request, **action_args) File "/usr/lib/python2.7/dist-packages/glance/common/wsgi.py", line 644, in dispatch return method(*args, **kwargs) File "/usr/lib/python2.7/dist-packages/glance/common/utils.py", line 422, in wrapped return func(self, req, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/glance/api/v2/image_tags.py", line 46, in update image_repo.save(image) File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save result = self.base.save(base_item) File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save result = self.base.save(base_item) File "/usr/lib/python2.7/dist-packages/glance/notifier/__init__.py", line 140, in save super(ImageRepoProxy, self).save(image) File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save result = self.base.save(base_item) File "/usr/lib/python2.7/dist-packages/glance/api/policy.py", line 186, in save return super(ImageRepoProxy, self).save(image) File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save result = self.base.save(base_item) File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save result = self.base.save(base_item) File "/usr/lib/python2.7/dist-packages/glance/store/__init__.py", line 398, in save result = super(ImageRepoProxy, self).save(image) File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save result = self.base.save(base_item) File "/usr/lib/python2.7/dist-packages/glance/db/__init__.py", line 170, in save image.tags) File "/usr/lib/python2.7/dist-packages/glance/db/registry/api.py", line 59, in wrapper return func(client, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/glance/db/registry/api.py", line 200, in image_tag_set_all client.image_tag_set_all(image_id=image_id, tags=tags) File "/usr/lib/python2.7/dist-packages/glance/common/rpc.py", line 274, in method_proxy return self.do_request(item, **kw) File "/usr/lib/python2.7/dist-packages/glance/common/rpc.py", line 240, in do_request 'kwargs': kwargs}]) File "/usr/lib/python2.7/dist-packages/glance/common/client.py", line 64, in wrapped return func(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/glance/common/rpc.py", line 223, in bulk_request body = self._serializer.to_json(commands) File "/usr/lib/python2.7/dist-packages/glance/common/wsgi.py", line 577, in to_json return json.dumps(data, default=self._sanitizer) File "/usr/lib/python2.7/json/__init__.py", line 238, in dumps **kw).encode(obj) File "/usr/lib/python2.7/json/encoder.py", line 201, in encode chunks = self.iterencode(o, _one_shot=True) File "/usr/lib/python2.7/json/encoder.py", line 264, in iterencode return _iterencode(o, 0) ValueError: Circular reference detected After adding sanitizer check for it the sqlalchemy gets empty id to fetch: Mar 21 14:58:26.627 HOST 24293 DEBUG glance.db.sqlalchemy.api [...] No image found with ID None Mar 21 14:58:26.628 HOST 24293 ERROR glance.common.rpc [...] RPC Call Error: No image found with ID None Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/glance/common/rpc.py", line 177, in __call__ result = method(req.context, **kwargs) File "/usr/lib/python2.7/dist-packages/glance/db/sqlalchemy/api.py", line 832, in image_get_all force_show_deleted=showing_deleted) File "/usr/lib/python2.7/dist-packages/glance/db/sqlalchemy/api.py", line 451, in _image_get raise exception.NotFound(msg) NotFound: No image found with ID None There is set([]) passed to json.dumps() which is not parseable:  self.func(req, *args, **kwargs)    File "/usr/lib/python2.7/dist-packages/glance/common/wsgi.py", line 625, in __call__      request, **action_args)    File "/usr/lib/python2.7/dist-packages/glance/common/wsgi.py", line 644, in dispatch      return method(*args, **kwargs)    File "/usr/lib/python2.7/dist-packages/glance/common/utils.py", line 422, in wrapped      return func(self, req, *args, **kwargs)    File "/usr/lib/python2.7/dist-packages/glance/api/v2/image_tags.py",  line 46, in update      image_repo.save(image)    File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save      result = self.base.save(base_item)    File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save      result = self.base.save(base_item)    File "/usr/lib/python2.7/dist-packages/glance/notifier/__init__.py", line 140, in save      super(ImageRepoProxy, self).save(image)    File  "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save      result = self.base.save(base_item)    File "/usr/lib/python2.7/dist-packages/glance/api/policy.py", line 186, in save      return super(ImageRepoProxy, self).save(image)    File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save      result = self.base.save(base_item)    File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save  result = self.base.save(base_item)    File "/usr/lib/python2.7/dist-packages/glance/store/__init__.py", line 398, in save      result = super(ImageRepoProxy, self).save(image)    File "/usr/lib/python2.7/dist-packages/glance/domain/proxy.py", line 65, in save      result = self.base.save(base_item)    File "/usr/lib/python2.7/dist-packages/glance/db/__init__.py", line 170, in save      image.tags)    File "/usr/lib/python2.7/dist-packages/glance/db/registry/api.py", line 59,  in wrapper      return func(client, *args, **kwargs)    File "/usr/lib/python2.7/dist-packages/glance/db/registry/api.py", line 200, in image_tag_set_all      client.image_tag_set_all(image_id=image_id, tags=tags)    File "/usr/lib/python2.7/dist-packages/glance/common/rpc.py", line 274, in method_proxy      return self.do_request(item, **kw)    File "/usr/lib/python2.7/dist-packages/glance/common/rpc.py", line 240, in do_request      'kwargs': kwargs}])    File  "/usr/lib/python2.7/dist-packages/glance/common/client.py", line 64, in wrapped      return func(self, *args, **kwargs)    File "/usr/lib/python2.7/dist-packages/glance/common/rpc.py", line 223, in bulk_request      body = self._serializer.to_json(commands)    File "/usr/lib/python2.7/dist-packages/glance/common/wsgi.py", line 577, in to_json      return json.dumps(data, default=self._sanitizer)    File "/usr/lib/python2.7/json/__init__.py", line 238, in dumps  **kw).encode(obj)    File "/usr/lib/python2.7/json/encoder.py", line 201, in encode      chunks = self.iterencode(o, _one_shot=True)    File "/usr/lib/python2.7/json/encoder.py", line 264, in iterencode      return _iterencode(o, 0)  ValueError: Circular reference detected
2014-03-27 21:27:25 OpenStack Infra glance: status In Progress Fix Committed
2014-04-01 19:41:37 Thierry Carrez glance: status Fix Committed Fix Released
2014-04-01 19:41:37 Thierry Carrez glance: milestone icehouse-rc1
2014-04-17 11:14:25 Thierry Carrez glance: milestone icehouse-rc1 2014.1