swift/swift/common/middleware
Samuel Merritt db29ffc983 Make proxy_logging close the WSGI iterator
PEP 333 says that the WSGI framework will call .close() on the
iterator returned by a WSGI application once it's done, provided such
a method exists. So, if our code wraps an iterator, then we have to
call .close() on it once we're done with it. proxy_logging wasn't.

Since WSGIContext gets it right, I looked at making proxy_logging use
WSGIContext. However, WSGIContext is all about forcing the first chunk
out of the iterator so that it can capture the final HTTP status and
headers; it doesn't help if you want to look at every chunk.
proxy_logging wants every chunk so it can count the bytes sent.

This didn't hurt anything in Swift, but pconstantine was complaining
in IRC that our failure to call .close() was goofing up some other
middleware he had.

Change-Id: Ic6ea0795ccef6cda2b5c6737697ef7d58eac9ab4
2015-02-20 11:04:24 -08:00
..
x_profile Fix tempfile bugs from commit 6978275 2014-11-26 14:21:33 -08:00
__init__.py Initial commit of middleware refactor 2010-08-20 00:42:38 +00:00
account_quotas.py Return 403 on unauthorized upload when over account quota 2014-10-30 14:03:56 -07:00
acl.py Fix invalid account acl generating 500 response. 2014-02-19 18:32:53 +00:00
bulk.py Rework use of constraints to ease testing 2014-04-02 23:48:01 -04:00
catch_errors.py Let users add their own txid suffixes 2014-05-16 15:29:47 -04:00
cname_lookup.py Remove unneeded condition 2014-12-16 13:26:10 +00:00
container_quotas.py Fix container quota check during cross-account COPY 2014-11-25 17:07:05 -05:00
container_sync.py Add Storage Policy Support to Container Sync 2014-06-18 21:09:54 -07:00
crossdomain.py Fix misspellings in swift 2014-02-20 16:15:48 +08:00
dlo.py Fix the GET's response code when there is a missing segment in LO 2014-12-25 03:24:44 +09:00
domain_remap.py Allow empty reseller prefixes in domain_remap 2014-04-23 23:59:28 +01:00
formpost.py Add support for container TempURL Keys 2015-02-10 21:37:10 +00:00
gatekeeper.py Block X-Backend* in gatekeeper 2014-03-20 18:53:54 -07:00
healthcheck.py Change OpenStack LLC to Foundation 2013-09-20 01:02:31 +08:00
keystoneauth.py Add undocumented options to keystoneauth sample config 2015-01-06 16:57:17 +00:00
list_endpoints.py Update doc for list_endpoints v2 API 2014-07-24 09:37:35 +01:00
memcache.py Make more memcache options configurable 2015-01-14 11:16:32 -05:00
name_check.py Convert maximum length to integer in name_check 2014-10-08 09:59:47 +05:30
proxy_logging.py Make proxy_logging close the WSGI iterator 2015-02-20 11:04:24 -08:00
ratelimit.py added swift_source to ratelimit info calls 2015-02-15 17:14:31 -08:00
recon.py Show each policy's information on quarantined files in recon 2015-01-20 18:42:20 +09:00
slo.py Drop redundant check in SLO segment-size validation 2015-01-12 10:02:52 -08:00
staticweb.py Improve StaticWeb 404 on web-listings/index 2014-02-18 11:46:31 +00:00
tempauth.py Changed several files to be Python3 friendly 2014-06-12 11:19:05 -07:00
tempurl.py Add support for container TempURL Keys 2015-02-10 21:37:10 +00:00
xprofile.py updated hacking rules 2014-09-25 11:04:31 -07:00