Nova API service stuck in endless loop if image_service=nova.image.s3.S3ImageService
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
New
|
Undecided
|
Unassigned |
Bug Description
Tested that on last bzr837 and several revs before. If you have --image_
Workaroung: change --image_service flag to "nova.image.
Here is /etc/nova/
--verbose=true
--ec2_url=http://
--s3_host=10.0.0.1
--cc_host=10.0.0.1
--rabbit_
--sql_connectio
--glance_port=9292
--glance_
--use_s3=true
--ajax_
--libvirt_type=kvm
--use_syslog=false
--node_
--logging_
--logging_
--logging_
--use_cow_
--auth_
--network_
--scheduler_
--image_
--use_ipv6=false
--ca_path=
--keys_
--images_
--buckets_
--instances_
--networks_
--dhcpbridge_
--dhcpbridge=
--injected_
--libvirt_
--vpn_client_
--credentials_
--state_
--lock_
Here is /var/log/
2011-03-21 13:12:43,492 nova.api: Starting nova-api node (version 2011.2-
2011-03-21 13:12:43,492 nova.api: Full set of FLAGS:
<<<< SKIPPED TO SAVE SPACE >>>>
2011-03-21 13:12:43,506 nova: Using paste.deploy config at: /etc/nova/
2011-03-21 13:12:43,511 nova: App Config: ec2
{'/2007-08-29': 'ec2metadata', '/services/Admin': 'ec2admin', '/2007-10-10': 'ec2metadata', '__file__': '/etc/nova/
2011-03-21 13:12:43,511 nova: Running ec2 API
2011-03-21 13:12:43,619 nova: maximum recursion depth exceeded
(nova): TRACE: Traceback (most recent call last):
(nova): TRACE: File "/usr/bin/
(nova): TRACE: service = service.
(nova): TRACE: File "/usr/lib/
(nova): TRACE: service.start()
(nova): TRACE: File "/usr/lib/
(nova): TRACE: self.wsgi_app = _run_wsgi(
(nova): TRACE: File "/usr/lib/
(nova): TRACE: app = wsgi.load_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: app = deploy.
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return loadobj(APP, uri, name=name, **kw)
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return context.create()
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return self.object_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: **context.
(nova): TRACE: File "/usr/lib/
(nova): TRACE: val = callable(*args, **kw)
(nova): TRACE: File "/usr/lib/
(nova): TRACE: app = loader.
(nova): TRACE: File "/usr/lib/
(nova): TRACE: name=name, global_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return self.object_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: app = filter(app)
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return cls(app, **local_config)
(nova): TRACE: File "/usr/lib/
(nova): TRACE: self.controller = utils.import_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: self.image_service = s3.S3ImageService()
(nova): TRACE: File "/usr/lib/
(nova): TRACE: service = utils.import_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return cls()
(nova): TRACE: File "/usr/lib/
(nova): TRACE: service = utils.import_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return cls()
<<<< LOTS OF SAME LINES SKIPPED HERE >>>>
(nova): TRACE: File "/usr/lib/
(nova): TRACE: service = utils.import_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return cls()
(nova): TRACE: File "/usr/lib/
(nova): TRACE: service = utils.import_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: val = gflags.
(nova): TRACE: File "/usr/lib/
(nova): TRACE: fl = self.FlagDict()
(nova): TRACE: RuntimeError: maximum recursion depth exceeded
(nova): TRACE: