
Add a new middleware implementing some basic container quotas. Quotas are subject to several limitations: eventual consistency, the timeliness of the cached container_info (60 second ttl by default), and it’s unable to reject chunked transfer uploads that exceed the quota (though once the quota is exceeded, new chunked transfers will be refused). However, they get most of the way to container quotas fairly inexpensively. Quotas are set by adding meta values to the container, and are validated when set: X-Container-Meta-Quota-Bytes: Maximum size of the container, in bytes. X-Container-Meta-Quota-Count: Maximum object count of the container. DocImpact Change-Id: I77cfbf6dc231a2e522bd67328e4c082424a93eee
189 lines
2.7 KiB
ReStructuredText
189 lines
2.7 KiB
ReStructuredText
.. _misc:
|
|
|
|
****
|
|
Misc
|
|
****
|
|
|
|
.. _exceptions:
|
|
|
|
Exceptions
|
|
==========
|
|
|
|
.. automodule:: swift.common.exceptions
|
|
:members:
|
|
:undoc-members:
|
|
:show-inheritance:
|
|
|
|
.. _constraints:
|
|
|
|
Constraints
|
|
===========
|
|
|
|
.. automodule:: swift.common.constraints
|
|
:members:
|
|
:undoc-members:
|
|
:show-inheritance:
|
|
|
|
.. _utils:
|
|
|
|
Utils
|
|
=====
|
|
|
|
.. automodule:: swift.common.utils
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
.. _common_tempauth:
|
|
|
|
TempAuth
|
|
========
|
|
|
|
.. automodule:: swift.common.middleware.tempauth
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
.. _acls:
|
|
|
|
ACLs
|
|
====
|
|
|
|
.. automodule:: swift.common.middleware.acl
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
.. _wsgi:
|
|
|
|
WSGI
|
|
====
|
|
|
|
.. automodule:: swift.common.wsgi
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
.. _direct_client:
|
|
|
|
Direct Client
|
|
=============
|
|
|
|
.. automodule:: swift.common.direct_client
|
|
:members:
|
|
:undoc-members:
|
|
:show-inheritance:
|
|
|
|
.. _internal_client:
|
|
|
|
Internal Client
|
|
===============
|
|
|
|
.. automodule:: swift.common.internal_client
|
|
:members:
|
|
:undoc-members:
|
|
:show-inheritance:
|
|
|
|
.. _buffered_http:
|
|
|
|
Buffered HTTP
|
|
=============
|
|
|
|
.. automodule:: swift.common.bufferedhttp
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
.. _healthcheck:
|
|
|
|
Healthcheck
|
|
===========
|
|
|
|
.. automodule:: swift.common.middleware.healthcheck
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
.. _recon:
|
|
|
|
Recon
|
|
===========
|
|
|
|
.. automodule:: swift.common.middleware.recon
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
.. _memecached:
|
|
|
|
MemCacheD
|
|
=========
|
|
|
|
.. automodule:: swift.common.memcached
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
Manager
|
|
=========
|
|
|
|
.. automodule:: swift.common.manager
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
Ratelimit
|
|
=========
|
|
|
|
.. automodule:: swift.common.middleware.ratelimit
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
StaticWeb
|
|
=========
|
|
|
|
.. automodule:: swift.common.middleware.staticweb
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
TempURL
|
|
=======
|
|
|
|
.. automodule:: swift.common.middleware.tempurl
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
FormPost
|
|
========
|
|
|
|
.. automodule:: swift.common.middleware.formpost
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
Domain Remap
|
|
============
|
|
|
|
.. automodule:: swift.common.middleware.domain_remap
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
CNAME Lookup
|
|
============
|
|
|
|
.. automodule:: swift.common.middleware.cname_lookup
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
Proxy Logging
|
|
=============
|
|
|
|
.. automodule:: swift.common.middleware.proxy_logging
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
Bulk Operations (Delete and Archive Auto Extraction)
|
|
====================================================
|
|
|
|
.. automodule:: swift.common.middleware.bulk
|
|
:members:
|
|
:show-inheritance:
|
|
|
|
Container Quotas
|
|
=============
|
|
|
|
.. automodule:: swift.common.middleware.container_quotas
|
|
:members:
|
|
:show-inheritance:
|
|
|