Using upstream code i was able to find such bug, which seems not even being handled. When trying to create a backup for instance within deployment that doesn't have Swift, Trove API doesn't handle correctly process of responding to Trove's user.
trove backup-create 8d03c1cc-23cd-47c1-b1f9-31662eaff82d 8d03c1cc-23cd-47c1-b1f9-31662eaff82d
ERROR: Internal Server Error. Please keep this ID to help us figure out what went wrong: (ff133403-66ce-42cf-b85e-c61e6e0f3340). (HTTP 500)
2014-11-21 18:29:39.880 ERROR trove.common.wsgi [req-90cd67f2-bc7f-4970-b132-970fab629187 1db3a5ac60f14958a0dbfd771694a049 cafcdd8aae5f4d888e27c6e6291a5e9c] ff133403-66ce-42cf-b85e-c61e6e0f3340: ('Connection aborted.', error(111, 'ECONNREFUSED'))
2014-11-21 18:29:39.880 TRACE trove.common.wsgi Traceback (most recent call last):
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/trove/common/wsgi.py", line 251, in execute_action
2014-11-21 18:29:39.880 TRACE trove.common.wsgi **action_args)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/trove/openstack/common/wsgi.py", line 395, in execute_action
2014-11-21 18:29:39.880 TRACE trove.common.wsgi return self.dispatch(self.controller, action, request, **action_args)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/trove/openstack/common/wsgi.py", line 404, in dispatch
2014-11-21 18:29:39.880 TRACE trove.common.wsgi return method(*args, **kwargs)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/trove/backup/service.py", line 64, in create
2014-11-21 18:29:39.880 TRACE trove.common.wsgi backup = Backup.create(context, instance, name, desc, parent_id=parent)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/trove/backup/models.py", line 116, in create
2014-11-21 18:29:39.880 TRACE trove.common.wsgi _create_resources)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/trove/quota/quota.py", line 349, in run_with_quotas
2014-11-21 18:29:39.880 TRACE trove.common.wsgi result = f()
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/trove/backup/models.py", line 72, in _create_resources
2014-11-21 18:29:39.880 TRACE trove.common.wsgi cls.verify_swift_auth_token(context)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/trove/backup/models.py", line 251, in verify_swift_auth_token
2014-11-21 18:29:39.880 TRACE trove.common.wsgi client.get_account()
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/swiftclient/client.py", line 1293, in get_account
2014-11-21 18:29:39.880 TRACE trove.common.wsgi full_listing=full_listing)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/swiftclient/client.py", line 1243, in _retry
2014-11-21 18:29:39.880 TRACE trove.common.wsgi rv = func(self.url, self.token, *args, **kwargs)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/swiftclient/client.py", line 483, in get_account
2014-11-21 18:29:39.880 TRACE trove.common.wsgi conn.request(method, full_path, '', headers)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/swiftclient/client.py", line 217, in request
2014-11-21 18:29:39.880 TRACE trove.common.wsgi files=files, **self.requests_args)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/swiftclient/client.py", line 185, in _request
2014-11-21 18:29:39.880 TRACE trove.common.wsgi return self.request_session.request(*arg, **kwarg)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 457, in request
2014-11-21 18:29:39.880 TRACE trove.common.wsgi resp = self.send(prep, **send_kwargs)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 569, in send
2014-11-21 18:29:39.880 TRACE trove.common.wsgi r = adapter.send(request, **kwargs)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi File "/usr/local/lib/python2.7/dist-packages/requests/adapters.py", line 407, in send
2014-11-21 18:29:39.880 TRACE trove.common.wsgi raise ConnectionError(err, request=request)
2014-11-21 18:29:39.880 TRACE trove.common.wsgi ConnectionError: ('Connection aborted.', error(111, 'ECONNREFUSED'))
2014-11-21 18:29:39.880 TRACE trove.common.wsgi
2014-11-21 18:29:39.936 INFO eventlet.wsgi [req-90cd67f2-bc7f-4970-b132-970fab629187 1db3a5ac60f14958a0dbfd771694a049 cafcdd8aae5f4d888e27c6e6291a5e9c] 172.16.43.250 - - [21/Nov/2014 18:29:39] "POST /v1.0/cafcdd8aae5f4d888e27c6e6291a5e9c/backups HTTP/1.1" 500 335 31.616391
Fix proposed to branch: master /review. openstack. org/155613
Review: https:/