5c1a7871d9173db9fbd855b72a98ecd8ff163800
Commit Graph

2797 Commits

This Branch
This Branch
All Branches
Author SHA1 Message Date
Jenkins
83bdd0b2e1 Merge "Refactor DiskFile instantiation in object server." 2013年06月25日 20:29:25 +00:00
Jenkins
a42e87a464 Merge "Add sample rsyslog.conf." 2013年06月25日 19:58:01 +00:00
Jenkins
9ac0b14a05 Merge "Fix swift-dispersion-report." 2013年06月25日 19:43:59 +00:00
Kun Huang
9fc55ee2b4 Add sample rsyslog.conf.
Give users a sample rsyslog.conf to manage their logs easily based on
LOCAL0 swift used. In this patch I offer some choices to output logs
via commnet lines or uncomment.
Change-Id: I2fe150a6e3d164a989c3520c0b7f032897a71f18
2013年06月25日 10:24:26 +08:00
Brian D. Burns
6768d5b4be Use object name from request in bulk Errors
This will allow users to more easily match the failed objects in Errors
for bulk delete requests to the object names they provided in the request.
For extract Errors, it reports the failed path from the tar archive.
DocImpact
Change-Id: I084057810fc4fb7fdac05494cc6fec2cbf81bb9d
2013年06月24日 16:44:32 -04:00
Samuel Merritt
57d4e6e718 Fix swift-dispersion-report.
Fixes bug 1180680.
Change-Id: I1c0eaa6f934f73853e832a8e468e1b8369a21117
2013年06月24日 10:58:22 -07:00
Samuel Merritt
d9f2a76973 Local write affinity for object PUT requests.
The proxy can now be configured to prefer local object servers for PUT
requests, where "local" is governed by the "write_affinity". The
"write_affinity_node_count" setting controls how many local object
servers to try before giving up and going on to remote ones.
I chose to simply re-order the object servers instead of filtering out
nonlocal ones so that, if all of the local ones are down, clients can
still get successful responses (just slower).
The goal is to trade availability for throughput. By writing to local
object servers across fast LAN links, clients get better throughput
than if the object servers were far away over slow WAN links. The
downside, of course, is that data availability (not durability) may
suffer when drives fail.
The default configuration has no write affinity in it, so the default
behavior is unchanged.
Added some words about these settings to the admin guide.
DocImpact
Change-Id: I09a0bd00524544ff627a3bccdcdc48f40720a86e
2013年06月23日 22:04:56 -07:00
Jenkins
13347af64c Merge "Improve swift's keystoneauth ACL support" 2013年06月24日 04:57:13 +00:00
Jenkins
054ffbe4a6 Merge "Stop getting useless bytes on manifest Range requests." 2013年06月23日 17:48:49 +00:00
yuan-zhou
60388c9978 Adding unit tests for direct client
- Added simple unit tests for direct client
 - Implemented chunked put in direct_put_object
Change-Id: Icec1019b5157fae33e2fd36a7fc3b9c0cc15afec
2013年06月22日 16:15:29 +08:00
Samuel Merritt
e8e6bffc95 Clean up some remnants of StaticWeb's and TempURL's custom caching.
As of e499b91, these config values and functions are unused in StaticWeb.
As of 2e155e5, the comment in TempURL is false.
Change-Id: I75b631ece8a9a6075c406765361629c549c449f6
2013年06月21日 17:37:06 -07:00
Jenkins
75660a1e9e Merge "bulk response Content-Type does not match request Accept header" 2013年06月21日 17:21:03 +00:00
Jenkins
461b88b7bd Merge "Added utils.FileLikeIter" 2013年06月21日 15:34:41 +00:00
Jenkins
2412f6c737 Merge "Add "normal", optparse-style options to swift-ring-builder add." 2013年06月21日 15:22:51 +00:00
Jenkins
4eda025a58 Merge "Add example Apache config files" 2013年06月21日 08:20:29 +00:00
Jenkins
d5736ec00b Merge "python3: Introduce py33 to tox.ini" 2013年06月21日 01:45:45 +00:00
Jenkins
cc660921dc Merge "use get_container_info for staticweb" 2013年06月21日 01:32:22 +00:00
David Hadas
e872e54c2a Add example Apache config files
This patch is needed in 1.9 as a dependency for adding swift/apache
to devstack.
zhang-hare is working in parallel on a devstack patch that depend
on this patch.
As part of this patch we add examples dir.
In this dir we add template config files that can be used either by
a script (as will be done by devstack) or serve a an example to the
admin.
Apache2 vhost files were added under examples/apache2
Wsgi files were added under examples/wsgi
Fixes: Bug #1191388
Change-Id: If90e38a0ba36f6b59016d4a1374f4100f0bbee7b
2013年06月20日 21:56:21 +03:00
Jenkins
ff02537d97 Merge "update .gitignore" 2013年06月20日 15:00:44 +00:00
Jenkins
c19daab149 Merge "Add max_header_size to swift.conf-sample and relative UT" 2013年06月20日 14:04:26 +00:00
Kun Huang
2a9da16de6 update .gitignore
Ignore build/ directory, which is auto-created when running `python
setup.py bdist` like dist/ directory.
Change-Id: Ie58936320d995e4e81f8929128475e538665bde8
2013年06月20日 17:58:50 +08:00
Michael Barton
e499b9100b use get_container_info for staticweb
Update staticweb to use get_container_info instead of its own memcache entry.
Change-Id: I59bc0d94b9e45f3d5776a5462f53b82ab78101d4
2013年06月20日 01:04:53 -07:00
John Dickinson
1b930dd669 version bump to 1.9.0 to reflect current dev target
Change-Id: Ia0a1b36ae90ed895dcc9876c016aaf261ad56674
2013年06月19日 15:30:48 -07:00
Jenkins
527dc236c5 Merge "Make TempURL more cache-efficient." 2013年06月19日 21:43:25 +00:00
Jenkins
9d0a0e850e Merge "Swift tests for unicode headers" 2013年06月19日 20:23:33 +00:00
Jenkins
440f508ebe Merge "Optional TCP_KEEPIDLE in unit tests" 2013年06月19日 19:32:05 +00:00
Samuel Merritt
2e155e5603 Make TempURL more cache-efficient.
So, there's two cases here. In one case, we have memcache enabled;
account info gets cached in the usual place, and tempurl keys get
cached separately. In the other case, we have no cache. In neither
case is anything gained by having TempURL cache keys separately from
the account info.
This commit removes TempURL's custom caching logic and makes it rely
on get_account_info() instead.
Benefits include:
 * immediate visibility of new keys on account POST
 * less data in the cache per account --> more stuff fits in cache
 * less code for bugs to hide in
Change-Id: Idb0b6c165da14196b4c79149c546f0159b54edcb
2013年06月19日 11:44:47 -07:00
Jenkins
6a51c5e8ff Merge "Add branch coverage reporting" 2013年06月19日 18:41:52 +00:00
gholt
0a77f04893 Added utils.FileLikeIter
A really simple version of this was in container sync already, and I
needed a more complete version for work I'm doing, and I noticed
https://review.openstack.org/#/c/33405/ was also making use of it.
So, here's a more full version.
If https://review.openstack.org/#/c/33405/ lands before this, I'll
update it accordingly.
Change-Id: Iba66b6a97f65e312e04fdba273e8f4ad1d3e1594
2013年06月19日 18:21:52 +00:00
Kun Huang
5c8785aaee Add max_header_size to swift.conf-sample and relative UT
1. Add explanation of MAX_HEADER_SIZE into swift.conf-sample as same as
other settings in swift.conf. Especially point out the default size of
header line in eventlet is 8192 which is the main reason why we set 8192
for MAX_HEADER_SIZE in swift.
2. Add some unit tests to check valid settings in swift.conf. Test cases
in test_constraints use /etc/swift/swift.conf if exists, and if any
wrong settings are in it (MAX_META_VALE > MAX_META_OVERALL_SIZE), swift's
unit test must fail. These new unit tests is used in this case.
Change-Id: I7bb21951d46050163c1b7bceac8d49302b9209f7
2013年06月19日 23:45:38 +08:00
David Goetz
ad24cde120 bulk response Content-Type does not match request Accept header
Change-Id: Ieceed3837466c45bc2790b09cd56ae95f43dba2e
2013年06月19日 07:45:46 -07:00
Jenkins
60c1bc545e Merge "Treat directory objects as not found" 2013年06月18日 22:21:49 +00:00
Ilya Kharin
2a67003e77 Optional TCP_KEEPIDLE in unit tests
Allows to run unit tests on BSD-based platforms. The commit
da99c339 that solved the problem doesn't contain fixes of unit
tests.
Change-Id: Iff1771c1cbb37c30a888cd1da4fca5636e5797e7
2013年06月18日 18:05:28 +04:00
Jenkins
f99cf2dcc1 Merge "Fixed some minor doc building errors" 2013年06月16日 00:28:40 +00:00
Jenkins
0d24b3e822 Merge "More xml fixes" 2013年06月14日 22:37:27 +00:00
Jenkins
a30dbf1df0 Merge "Fix 503 on account/container HEAD w/invalid format." 2013年06月14日 18:23:43 +00:00
gholt
e9d1199887 More xml fixes
subdir elements now have their names quoteattr
Change-Id: I37faf164e339deacb6555db94196135debe22a6c
2013年06月14日 16:18:20 +00:00
Jenkins
59a8aae035 Merge "Fix ring validate with device prior to rebalance." 2013年06月14日 16:15:02 +00:00
Jenkins
88d3d125e2 Merge "Better escaping for GET /v1/a?format=xml." 2013年06月14日 16:14:58 +00:00
Chuck Thier
cbe90735e8 Fixed some minor doc building errors
Change-Id: I91709c3fc6e937fdb31b418ac98fe5a67265cea7
2013年06月14日 15:19:28 +00:00
Samuel Merritt
92d7eadd32 Better escaping for GET /v1/a?format=xml.
Commit 8f9b135 fixed a bug where an XML attribute could have arbitrary
characters jammed into it, resulting in a document with arbitrary
tags... and it did remove the ability to get an arbitrary XML document
out of the object server. However, it left a couple of ways to get a
malformed XML document, one example of which is an account named ".
This fixes up the remaining ways and ensures you always get a
well-formed XML document in the account-listing response. Also, it
adds a unit test for the escaping of the container name; this was
already working, just untested.
If you look in the discussion for bug 1183884, you'll see that the
review comments there are basically "seems good, but could use a unit
test". (The astute reader will note that I am one of the guilty
parties in that review.)
I found this bug while writing the missing unit test.
The moral of this story is left as an exercise for the reader.
Fixes bug 1183884 harder.
Change-Id: I84b24dd930ba1bb6c4f674f8d3996639dedbce15
2013年06月13日 18:13:57 -07:00
Pete Zaitcev
11aaaf1f3f Remove Lucid/ppa instructions from SAIO guide
Lucid won't EOL until May of 2014; but I stopped trusting that ppa a long time
ago. Besides with the requires for dnspython and mock where they're at you
almost can't install swift from source on any stock distro and expect tests to
pass with system packages - so we're looking at pypi for depends regardless.
While I'm in there:
* more explanation of <your-user-name> and a helpful find/sed for configs
* group the "setup ~/.bashrc" stuff with the "setup ~/bin" stuff
* some updates/fixes from my experience installing on CentOS
* remove region warnings from remakerings
Change-Id: Ie2e6b06959ab699d853e07e5b7e8cda7036a44fe
2013年06月13日 18:29:06 -06:00
Jenkins
7757144da5 Merge "Added logging of x-delete-at values" 2013年06月13日 20:38:21 +00:00
Alex Gaynor
8f9b135e0a Checked user input in XML responses.
Fixes bug 1183884.
* swift/account/utils.py: Escape account name in XML listings.
Change-Id: I2392d012ddeec05a267c3dcf14748112316096f3
2013年06月13日 15:38:16 +00:00
gholt
04a189676b Added logging of x-delete-at values
Added logging of the x-delete-at value for object PUTs and POSTs and
made the additional log field generic for other similar use cases.
Logging the x-delete-at is useful because otherwise you might never
know why an object "disappeared" just by looking at saved proxy logs.
You'd see a successful PUT of the object followed some time by a GET
that 404s. If you still have the other logs, you could track down
what happened; but, at least with our clusters, we keep proxy logs
forever but only keep the other logs for a short while.
Change-Id: Ida559abcf8dc5666e2a7eea250a67d1c4b28b1be
2013年06月13日 15:14:35 +00:00
Jenkins
6001b4519d Merge "Fix formpost with queries without user_agent." 2013年06月13日 14:52:11 +00:00
Jenkins
cc4589cf63 Merge "Improve SAIO deploy document." 2013年06月13日 06:29:27 +00:00
Jenkins
b545fbe2af Merge "Add UT for checking special chars in object name" 2013年06月13日 06:22:44 +00:00
Kun Huang
58a095b93e Improve swift's keystoneauth ACL support
Below three bug reports talk about one thing.
Current keystoneauth ACL supports as:
tenant_name:user_id ok
tenant_name:user_name no
tenant_name:* no
tenant_id:user_id ok
tenant_id:user_name no
tenant_id:* no
*:user_id ok
*:user_name no
*:* no
This patch will make all of above work fine.
Applying (tenant/user)name could let user put or get their data in a
more readable way. The tenant_name:* and *:user_name is suitable for
many usage.
note: to keep compatibility here add a new keystone.identity just for
authorize() itself and leave env['keystone.identity'] to other
middlerwares.
Fixes: bug #1020709
Fixes: bug #1075362
Fixes: bug #1155389
Change-Id: I9354dedaad875117f6a9072c67e9ecf69bfca77e
2013年06月13日 13:25:25 +08:00
Kun Huang
90c422deae Improve SAIO deploy document.
improving points:
1. Remove yum install swift in Fedora; Use installing from source for
both Ubuntu and Fedora.
2. Explain you could use all users including root, your own guest. An
d the points developer have to care.
Change-Id: Id6d683441bd790a21734624e29eb7c98bb40de85
Fixes: bug #1126389 
2013年06月13日 11:55:03 +08:00