summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* version bump for 1.0 release1.0John Dickinson2013-12-051-1/+1
| | | | Change-Id: Ia50c3f50aa306b4c8c9519ce9b58315e4b14b263
* added authors, changelog, and .mailmapJohn Dickinson2013-12-054-3/+60
| | | | Change-Id: I03a51448221e2e9bb6eb1981d125fe59971d5dc7
* fixed log formatter issuesJohn Dickinson2013-12-023-8/+8
| | | | Change-Id: Ie567b59943029f3ae569576b5c8f1d0942a36a0a
* Make swift-bench not depending on swift.Chmouel Boudjnah2013-11-247-12/+210
| | | | | | | | | Remove the dependence on swift, import the only needed functions from swift.common.utils to swiftbench.utils Add tests for utils using mock instead. Change-Id: I1b69dce750b55f3ee0e999fb5a7100cf811f7ebe
* Add plumbing.Chmouel Boudjnah2013-11-2114-15/+139
| | | | | | | | | - Update .gitignore to ignore all testrunners. - Move swift-bench to swiftbench. - Move tests to tests/ - Add some simple {test-,}requirements (more works needs to be done to get proper versioning) Change-Id: Iab4d65f02cbce8c99ecafa30d15c4cb11f0b4293
* cleaned up filenames and dir structureJohn Dickinson2013-10-172-0/+0
| | | | Change-Id: Ifbb8941e916a586db0f71cbc734cadd8b2ade791
* added .gitreviewJohn Dickinson2013-10-111-0/+4
| | | | Change-Id: Iddce2d474bf7a44d6c0b479d8d01a768877695ca
* Change OpenStack LLC to FoundationZhiQiang Fan2013-09-204-4/+4
| | | | | Change-Id: I7c3df47c31759dbeb3105f8883e2688ada848d58 Closes-bug: #1214176
* fix swift i18nClay Gerrard2013-07-301-1/+1
| | | | Change-Id: I53cea28a6d7593a1b308dbcf77dddf7f40d76cb2
* Use Python 3.x compatible except constructDirk Mueller2013-08-281-4/+4
| | | | | | | | except x,y: was deprected and is removed in Python 3.x. Use "except x as y:" instead which works in any Python version >= 2.6. Change-Id: I7008c74b807340f3457d3a0c8bd0b83f23169d14
* Pep8 unit test modules for hacking and one liners (4 of 12)Peter Portante2013-08-311-1/+1
| | | | | | | | Address all the "hacking" lines that are flagged, and all the modules that just have one item flagged. Change-Id: I372a4bdf9c7748f73e38c4fd55e5954f1afade5b Signed-off-by: Peter Portante <peter.portante@redhat.com>
* Improve swift-bench performanceZap Chang2013-08-211-0/+1
| | | | | | | Single-host bench controller should be monkey-patched to achieve maximum concurrency. Change-Id: I77c63773edc7427d06c2fbfb67ededf36d9913d3
* Add delay in swift-benchKsenia Demina2013-07-192-0/+9
| | | | | | | | | | | With enable write affinity, it's necessary to wait until replication has moved things to their proper homes before running delete request. With write affinity turned on, only nodes in local region will get the object right after PUT request. Fix bug #1198926 Change-Id: I3aa8933d45c47a010ae05561e12176479e7c9bcc
* fix(gitignore) : ignore *.egg and *.egg-infoTheSriram2013-07-301-1/+2
| | | | Change-Id: I9496dab9e8f779a7ae045bb73b2cf8e77bda0d30
* Removed unnecessary monkeypatching of __builtin__Alex Gaynor2013-07-271-0/+1
| | | | | | | Replaced it with explicitly importing the gettext function, which is significantly more readable. Change-Id: Ia0a7edcf685fb6e4052a8290367b233169529ab8
* Ignore coverage HTML directory and MANIFEST.Peter Portante2013-07-251-0/+2
| | | | | Change-Id: I5286cd1b066da11eef98dbfea9252366ca3ffd9c Signed-off-by: Peter Portante <peter.portante@redhat.com>
* Make sure users can't remove their account quotasJon Snitow2013-07-241-0/+1
| | | | | | | | Protect X-Remove-Account-Meta-Quota-Bytes same as X-Account-Meta-Quota-Bytes Fixes bug 1204110 Change-Id: Ibac5b555f50b1fe41b2999c0d5776d90f9c9f3d1
* Corrected many style violations in the tests.Alex Gaynor2013-07-231-2/+0
| | | | | | | I focussed primarily on F-category violations, they are all but all fixed with this patch. Change-Id: I343f6945c97984ed1093bc347b6def6994297041
* update .gitignoreKun Huang2013-06-201-0/+1
| | | | | | | Ignore build/ directory, which is auto-created when running `python setup.py bdist` like dist/ directory. Change-Id: Ie58936320d995e4e81f8929128475e538665bde8
* Don't delete containers when they weren't created.Darrell Bishop2013-05-081-2/+3
| | | | | | | | | When swift-bench is run in direct mode, don't try to delete the containers which weren't created. Fixes bug 1177960. Change-Id: Ice07e8729bb776e2b215894cf95fb80b64167a8d
* fix dict duplicated keyVictor Rodionov2013-04-222-2/+2
| | | | | | remove duplicated key from swift-bench bin; and also add .idea to gitignore Change-Id: I31360489716d03324b8d2bb1c51e282393069c13
* Change logger name to module itself instead of rootKun Huang2013-03-171-1/+2
| | | | | | | | | Using root logger will make public module log failed by unknow keyword. Just change the logger name to module itself could dismiss this impact. And disable logger.propagate could prevent double outputing. Change-Id: I18696d124ebac9ca970d502558972e51de759097 Fixes: bug #1105133
* Cleanup based on pyflakes.Monty Taylor2013-01-301-5/+1
| | | | | | | | | | | pyflakes itself can't be used in any automated gating way, because there are two sets of false errors it raises. However, as an exercise, cleaning up the 'valid' ones uncovered three actual bugs. The other changes (mostly unused variables) are included here for fun. Command run: pyflakes swift | grep -v "undefined name '_'" Change-Id: I18696bf047dedad1a9fdbde3463e214fba95f7c6
* Add more command-line options to swift-bench.Samuel Merritt2013-01-221-1/+11
| | | | | | | | | | | | | These settings: 1. are already exposed via config file 2. were not exposed as command-line options, and 3. are things I wanted on the command line while benchmarking recently. I didn't include short options for --(get|put|delete)-concurrency since I couldn't think of good single-letter ones, and optparse won't take "-gc", "-pc", or "-dc". Change-Id: I0bd7c7ae2892244eed37b8c10c9357dc7e1190d3
* Fix superfluous GET requests in swift-bench.Samuel Merritt2013-01-211-3/+7
| | | | | | | | | | | | | | If you specified num_gets = 0 for a benchmarking run (say, if you're benchmarking PUT rate), you'd still get each swift-bench-client process doing 1 GET request. Now you don't. This should also fix the case where you've got more objects than swift-bench-client processes, for example when you're uploading a few large objects and then doing lots of parallel GETs of those objects. Now you'll get the number requested, not max(number-requested, number-of-bench-clients). Change-Id: Ied9eb733dd9af51a3c6af8b815ad6cff0ff746b7
* Convert LICENSE to use unix style line endings.Dan Prince2012-12-191-202/+202
| | | | | | | | | Ran dos2unix on LICENSE to convert to unit style line endings. This makes building packages which contain the LICENSE file a bit nicer... and matches other LICENSE files under the openstack umbrella which have unix style line endings as well. Change-Id: Id724d1ba402a590725a2d200f5e0599bce696e5a
* Ignore pycscope filesPeter Portante2012-12-041-0/+1
| | | | | Change-Id: I5fe38f28896d086e56ba9e718b02227d87dd4a2d Signed-off-by: Peter Portante <peter.portante@redhat.com>
* Make swift-bench use less memory with large object sizes.Samuel Merritt2012-11-081-3/+37
| | | | | | | | | | | | | | | | | | Before, swift-bench would create a string of the right size and pass that to [direct_]put_object. Uploading 5 GB objects w/concurrency of 4? Hope you've got a spare 20 GB of RAM in that machine. Now it lazily generates chunks (of size 64 KiB) to send. In my limited testing, this keeps RAM usage low while not impacting speed. There's backwards-compatibility code in direct_client.direct_put_object for any callers who are still passing in strings. There aren't any such in Swift's codebase, though. All one of those callers now pass an iterable. Fixes bug 911925. Change-Id: I40669fc00c7fb6699d8fb514e1be9b69436eca42
* Fixed swift-bench when using -b and a conf fileJoe Arnold2012-11-072-1/+2
| | | | Change-Id: I72448cd8578b53a658f151354a26066772e4b9ec
* changed TRUE_VALUES references to utils.config_true_value() callJohn Dickinson2012-10-192-6/+6
| | | | | | cleaned up pep8 (v1.3.3) in all files this patch touches Change-Id: I30e8314dfdc23fb70ab83741a548db9905dfccff
* fix config parsing in swift-bench -xJohn Dickinson2012-10-181-2/+7
| | | | | | | | This patch ensures that the command-line arg format (boolean) doesn't conflict with the conf file format (string) and the proper action is taken. Change-Id: I3284096e1a9478897e1c3246ab190b46d2590243
* Random pep8 fixes!Tom Fifield2012-10-131-14/+22
| | | | | | | | | | | | This patch merely fixes a selection of files to the point where pep8 1.3.3 is happy. Most of the errors are indentation related to continued lines (E126, E127, E128), bracket positions (E124) and the use of backslash (E502). Patch 2 fixes David's comments regarding backslash and an odd comment - thanks David! Change-Id: I4fbd77ecf5395743cb96acb95fa946c322c16560
* Can run swift-bench across multiple cores/servers.Darrell Bishop2012-08-253-20/+261
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | You run one or more swift-bench-client processes like this: $ swift-bench-client 127.0.0.1 20001 $ swift-bench-client 127.0.0.1 20002 Then you run swift-bench with a new option, --bench-clients (-b), which is specified once for each swift-bench-client: $ swift-bench -b 127.0.0.1:20001 -b 127.0.0.1:20002 You get log lines from each client (interleaved) along with a final report for all clients: 127.0.0.1:20002 swift-bench-server 2012-08-25 22:44:06,148 INFO Auth version: 1.0 127.0.0.1:20001 swift-bench-server 2012-08-25 22:44:06,148 INFO Auth version: 1.0 127.0.0.1:20001 swift-bench-server 2012-08-25 22:44:12,249 INFO 83 PUTS [0 failures], 41.5/s 127.0.0.1:20002 swift-bench-server 2012-08-25 22:44:14,430 INFO 74 PUTS [0 failures], 34.3/s ... 127.0.0.1:20002 swift-bench-server 2012-08-25 22:45:18,942 INFO Auth version: 1.0 127.0.0.1:20002 swift-bench-server 2012-08-25 22:45:20,946 INFO 238 DEL [2 failures], 118.9/s swift-bench 2012-08-25 22:45:27,549 INFO 2000 PUTS **FINAL** [0 failures], 56.8/s swift-bench 2012-08-25 22:45:27,550 INFO 30000 GETS **FINAL** [50 failures], 974.6/s swift-bench 2012-08-25 22:45:27,550 INFO 2000 DEL **FINAL** [20 failures], 237.1/s The concurrency, PUT count, and GET count config settings are divided by the number of bench_clients. In other words, the same volume of work is attempted (vs. not specifying --bench-clients), but it can now span servers and CPU cores. Benchmark containers are created (if use_proxy = yes) and deleted (if delete = yes), with appropriate concurrency, in the initiating swift-bench process, not any of the swift-bench-client processes. Change-Id: Idbf31a23093244ab357a9bf77e6031257774f24a
* Misc. swift-bench improvements.Darrell Bishop2012-08-253-18/+112
| | | | | | | | | | | | | | | | | | | | | | swift-bench now honors the environment variables, ST_AUTH, ST_USER, and ST_KEY like python-swiftclient does. Added --lower-object-size (or -l) command-line option which, if specified, will turn a specified --object-size into --upper-object-size. It will raise a ValueError if --object-size is not specified or is <= --lower-object-size. BenchController how handles SIGINT (KeyboardInterrupt) similarly to the swift command-line client: the first Ctrl-C will make it fast-track to completion (no new PUT or GET operations are started, but everything PUT is DELETE'ed). A second Ctrl-C will immediately exit. The behavior for SIGTERM is unchanged (a single SIGTERM will immediately terminate the process). Added a sample configuration file for swift-bench, with documenting comments. Change-Id: I6f394ad995300fc8af3d565d95c3b45559ee510a
* To simulate the real workloads, the objects to be uploaded could be created ↵ning_zhang2012-08-032-0/+7
| | | | | | in the random sizes, which are bounded (lower_object_size and upper_object_size) by the user inputs. Change-Id: I64647c5d613a0794f0807886a4833cd5c31c0c5e
* Fix Dispersion report and swift-bench on saioFlorian Hines2012-07-131-2/+2
| | | | | | | We're still using saio:11000 in a few spots so a few things don't work out of the box on the saio. Fixes bug #1024561 Change-Id: I226de54c2785b0d0b681c8d0cc24260adbd3d663
* swift-bench should be able to use auth version 2.0François Charlier2012-06-112-1/+8
| | | | | | Fixes Bug #1011727 Change-Id: I6681bd85a5ddb82a1059913ae90696e5994aa906
* Remove swift.common.client from here.Chmouel Boudjnah2012-05-221-1/+1
| | | | | | | | - It has been to its own gerrit project. - direct_client should follow next. - Implements blueprint clientbindings. Change-Id: I3bb50c95eba81302bfec71cb7ce5288b85a41dc0
* HTTP status value naming normalizationVictor Rodionov2012-04-211-1/+2
| | | | | | Replace HTTP status code with constants like HTTP_OK, HTTP_NOT_FOUND, etc. Change-Id: I76cd8bf880e7269454192a3bc4b027a297741247
* updated copyright date for all filesJohn Dickinson2012-03-193-3/+3
| | | | Change-Id: Ifd909d3561c2647770a7e0caa3cd91acd1b4f298
* Add support for venv-based test run with tox.Maru Newby2012-01-311-0/+1
| | | | | | | | | | | | | | | | | | | | | * Adds tox config - based on the config from python-quantumclient and updated for test, pep8 and coverage execution as per nova's run_tests.sh. * Adds nosetests defaults in setup.cfg * Adds runtime dependencies in tools/pip-requires - dependencies were gathered by referencing the packages used in creation of a Swift All In One. Versions were determined by checking the swift-core/trunk ppa or, failing that, the version available in lucid. * Adds test dependencies in tools/test-requires * Updates swift/common/middleware/formpost.py for pep8 compliance * Adds instructions for executing the tests with Tox to the developer_guidelines * Adds instructions for installing openstack.nose_plugin to developer_saio * Fixes bug 909177 Change-Id: I5407924d2181e9ab335aaf76bf30c8d40deccbb4
* remove unsed imports and variablesFelipe Reyes2012-01-281-2/+1
| | | | | | This cleanup is for the swift.common package Change-Id: Ibe74d4f0ae0376395f620b9be24a52cb8a4a5d98
* Updating changelog for 1.4.3gholt2011-09-071-0/+8
| | | | Change-Id: Iae6a3d5341d9621034c772174abfa3f10e7e335b
* Adding account_autocreate mode and refactoring TRUE_VALUESgholt2011-06-051-2/+2
|
* Don't track names on PUT failure to avoid extra failures in GET/DELETE.Juan J. Martinez2011-05-251-1/+2
|
* moving deleting of containers to run() method makes more senseGreg Lange2011-04-141-10/+10
|
* should probably let the user know when a container delete fails for reasons ↵Greg Lange2011-04-131-1/+3
| | | | other than having objects in it
* swift-bench now deletes containers it makes if deleting of objects is requestedGreg Lange2011-04-131-0/+8
|
* changing /usr/bin/python to /usr/bin/env pythonDavid Goetz2011-03-241-1/+1
|
* logging refactor to support proxy access logsClay Gerrard2011-02-101-4/+4
| | | | | | | | | | | | | New log level "notice" set to python log level 25 maps to syslog priority LOG_NOTICE. Used for some messages in the proxy server, but will be available to all apps using the LogAdapter returned from get_logger. Cleaned up some code in get_logger so that console logging works with log_routes and removed some unneeded bits. NamedFormatter functionality was split between LogAdapter (which now inherits from logging.LoggerAdapter) and TxnFormatter (which now is only responsible for adding the log records txn_id). The proxy server app now configures a separate logger for access line logging. By default it will use the same settings as the regular proxy logger.