c03d53ab7737e208d9c436088e41f60fdab96b30
Commit Graph

5077 Commits

This Branch
This Branch
All Branches
Author SHA1 Message Date
Tim Burke
c03d53ab77 Close EC fragment iterators in the GreenThread that's consuming them
Otherwise, we might try to close them while they're already running.
This should prevent conditional SLO requests from returning 500 when
they should have returned 304 or 412.
Change-Id: I075a892f901c18ab5c178c9c4a2f367b76ae78e2
Related-Change: I156d873c72c19623bcfbf39bf120c98800b3cada
2015年11月12日 18:23:27 -08:00
Jenkins
8ad8c0abb3 Merge "Small cleanup for unit/proxy/controllers/test_obj" 2015年11月12日 21:30:47 +00:00
Jenkins
3f09384d16 Merge "Added unit tests for ringbuilder command-line utility" 2015年11月12日 03:47:18 +00:00
Jenkins
d9e44bda05 Merge "monkeypatch thread for keystoneclient" 2015年11月11日 21:08:53 +00:00
Jenkins
aecf596b20 Merge "Added unit test cases for server.py" 2015年11月11日 21:01:46 +00:00
Jenkins
42b0bc0460 Merge "ObjectControllers return application errors as 499 on bad read" 2015年11月11日 17:04:54 +00:00
Kota Tsuyuzaki
fd30df6e65 Small cleanup for unit/proxy/controllers/test_obj
Follow up for https://review.openstack.org/#/c/236007
This fixes following minor items:
- Fix a 'raise Exception class' syntax to 'raise Exception instance'
- Use original eventlet.Timeout instead of swift.exceptions.Timeout
 imported from eventlet.Timeout
- Change Timeout to initiate w/o args (1st arguments should be timeout
 second and we don't have to set None if we don't want to set the sec)
- Add a message argument to some Exception instances
Change-Id: Iab608cd8a1f4d3f5b4963c26b94ab0501837ffe1
2015年11月11日 09:03:54 -08:00
Paul Dardeau
7f4139bc26 Added unit tests for ringbuilder command-line utility
Added new unit tests:
test_add_device_old_missing_region
test_create_ring_number_of_arguments
test_add_duplicate_devices
test_rebalance_with_seed
test_set_overload_number_of_arguments
test_main_no_arguments
test_main_single_argument
test_main_with_safe
Modified existing unit tests to create sample ring at start of test.
This change was needed to have unit tests run correctly and demonstrate
code coverage.
test_unknown
test_search_device_number_of_arguments
test_list_parts_number_of_arguments
test_set_weight_number_of_arguments
test_set_info_number_of_arguments
test_remove_device_number_of_arguments
test_set_min_part_hours_number_of_arguments
test_set_replicas_number_of_arguments
test_set_replicas_invalid_value
Updates to handled nested mocks.
Updates to handle no exception case when SystemExit is expected.
PEP8 corrections.
Moved new tests from try blocks to use of assertRaises or call to
run_srb using exp_results with specified exit codes.
Updated run_srb to accept a dictionary of expected results. Specifically,
look for 'valid_exit_codes' to test, default to (0,1).
Change-Id: I4cf3f5f055a9babba140c68a9c7ff90b9c50ea62
2015年11月11日 15:09:40 +00:00
Jenkins
e75dc8028b Merge "EC: Use best available ec_type in unittests" 2015年11月11日 04:34:57 +00:00
Jenkins
f20346d96e Merge "suppress warning output in a unit test" 2015年11月11日 04:28:21 +00:00
Sivasathurappan Radhakrishnan
ce173e9ed2 Added unit test cases for server.py
Added unit test cases to cover all code paths in REPLICATE and __call__
functions in account/server.py and container/server.py
Change-Id: Ia335e9a6668821d3e34b12fc3a133a707880e87f
2015年11月10日 21:38:47 +00:00
Tushar Gohad
2d85a3f699 EC: Use best available ec_type in unittests
To minimize external library dependencies for Swift unit
tests and SAIO, PyECLib 1.1.1 introduces a native backend
'liberasurecode_rs_vand.' This patch is to migrate over
the unit tests to the new ec_type when available.
This change will work with current pyeclib requirements
(==1.0.7) and also future requirements (>=1.0.7).
When we're able to raise *our* requirements to >=1.1.1 we
should remove jerasure from the list of preferred backends.
Related SAIO doc and example config changes should be
included with that patch.
Co-Authored-By: Clay Gerrard <clay.gerrard@gmail.com>
Change-Id: Idf657f0acf0479bc8158972e568a29dbc08eaf3b
2015年11月10日 12:18:50 -08:00
Jenkins
58fcc82428 Merge "Compare Swift config checksum in swift-recon --all" 2015年11月10日 19:34:17 +00:00
Bill Huber
66dc1eebb1 ObjectControllers return application errors as 499 on bad read
In the _transfer_data method, we translate all (Exception, Timeout)
into a 499 whereas we should consider translating them to 500 on
particular returning error scenarios.
This affects both ReplicatedObjectController and ECObjectControllear.
Change-Id: I571bbc5b1451243907b094a5718c8735fd824268
Closes-Bug: 1504299
2015年11月10日 13:31:39 -06:00
venkatamahesh
705642db4c Change stackforge repo to openstack repo
The projects which are moved to openstack
are corrected by replacing stackforge with openstack
Change-Id: I65b794a7f10df617bc2a4caf2c4010477a82dbc2
2015年11月10日 19:46:31 +05:30
John Dickinson
d755f5b520 suppress warning output in a unit test
test_write_builder_after_device_removal() wasn't setting a
default min_part_hours so a warnign was printed. Explicitly
adding a min_part_hours suppresses the warning
Change-Id: I6f234b72c34e066abb91f28e6eacf50e29be8842
2015年11月09日 22:03:37 -08:00
Jenkins
166c34383a Merge "DiskFileNoSpace check during object delete" 2015年11月10日 04:40:54 +00:00
Jenkins
85aaf50c21 Merge "Add unit tests to cover print_item_locations" 2015年11月09日 20:53:37 +00:00
Jenkins
a5ebd97052 Merge "Add missing docs for ring.builder.rebalance" 2015年11月07日 00:12:04 +00:00
Jenkins
510bcc1761 Merge "Re-organise ssync tests" 2015年11月06日 23:43:34 +00:00
Jenkins
14b30e56ac Merge "bug/1270114. Missing documentation for Bulk Middleware." 2015年11月06日 21:57:35 +00:00
Jenkins
f4e1f9fbf1 Merge "On py3, use dnspython3 dependency, not dnspython" 2015年11月06日 19:42:20 +00:00
Jenkins
f26af37bc2 Merge "Read the response body, if response status is greater than 300." 2015年11月06日 08:44:47 +00:00
Pradeep Kumar Singh
37337d5fcb Read the response body, if response status is greater than 300.
internal_client was not reading response if response status is not 200.
So proxy server treats this as client disconnect and logs 499 in log file.
This patch fixes that by reading response if response status is greater
than or equal to 300 and in acceptable statuses.
Closes-Bug: #1364752
Change-Id: I0512a25895da583956f76031e3c5de5c970bce01
2015年11月05日 20:07:15 -08:00
Jenkins
e66b9284bc Merge "Add unit tests for utils.validate_hash_path" 2015年11月06日 04:00:21 +00:00
Jenkins
12d08d6a6c Merge "Device marked to be removed in info about the ring." 2015年11月06日 03:00:40 +00:00
Kota Tsuyuzaki
c81f202f71 Add missing docs for ring.builder.rebalance
commit 71993d84e8 added
a new 'remove_dev' column to the
swift.common.ring.builder.rebalance return value.
This patch adds the docs for that and clean up a bit to
the variable name to be easy to read.
Change-Id: Idfd46e47b9f6894cbafc8b7701a4c7414212f79f
2015年11月05日 17:38:08 -08:00
Jenkins
22e294c418 Merge "Optimize the code performance" 2015年11月05日 22:39:41 +00:00
Paul Dardeau
331382e192 Add unit tests to cover print_item_locations
Add unit tests to cover all code paths in print_item_locations
function in cli/info.py.
Update comment to match what's tested for invalid/missing policy.
Update tests to verify output of print_item_locations
Corrected PEP8 compliance violations.
Change-Id: I84958cb70205ee8d7ea246826dd56201fa642da9
2015年11月05日 20:58:34 +00:00
Ondřej Nový
e0430fc74a Compare Swift config checksum in swift-recon --all
Change-Id: I796fe0895f4e5ddeb04c0d79a73579ce8bb9aa40
2015年11月05日 21:21:21 +01:00
Victor Stinner
609095b23f On py3, use dnspython3 dependency, not dnspython
Update requirements to install dnspython3 on Python 3 and dnspython on
Python 2. dnspython is not compatible with Python 3, and dnspython3
is not compatible with Python 2.
Add a requirement on pbr to ensure that pbr 1.6 or newer is
installed. pbr 1.0 or newer is required to support environment
markers in requirements which are now used to select dnspython or
dnspython3 depending on the Python major version.
Note: pbr 1.0 is enough, but OpenStack global requirements asks to
use "pbr>=1.6".
Change-Id: Ie5d437cd396972d4143ffffb96ec3c289e221b08
2015年11月05日 15:56:24 +01:00
Alistair Coles
6858510b59 Re-organise ssync tests
We have some tests that exercise both the sender and receiver,
but are spread across test_ssync_sender.py and test_ssync_receiver.py.
This creates a new module test_ssync.py and moves the end-to-end tests
into there.
Change-Id: Iea3e9932734924453f7241432afda90abbc75c06
2015年11月05日 14:50:28 +00:00
Jenkins
ec9095bf58 Merge "Get rid of contextlib.nested() for py3" 2015年11月05日 12:20:06 +00:00
Venkateswarlu Pallamala
48421f902e Optimize the code performance
Usually, the number of characters in FORBIDDEN_CHARS are fewer than
the number of characters in the req.path - so it's better to use
smaller count for the outer loop.
Change-Id: I78b7e0ff4cae1cc90e8d29d7bddcec7fe0ba4bd4
2015年11月04日 06:06:10 -08:00
Jenkins
7242c4a006 Merge "Fix missing *-replicator conf sections in deployment guide" 2015年11月03日 22:51:24 +00:00
Mehdi Abaakouk
bf8689474a monkeypatch thread for keystoneclient
keystoneclient uses threading.Lock(), but swift doesn't
monkeypatch threading, this result in lockup when two
greenthreads try to acquire a non green lock.
This change fixes that.
Change-Id: I9b44284a5eb598a6978364819f253e031f4eaeef
Closes-bug: #1508424 
2015年11月03日 16:36:19 +01:00
Jenkins
e1910dff17 Merge "swift-ring-builder can't remove a device with zero weight" 2015年11月02日 14:37:33 +00:00
Jenkins
5f23d0617f Merge "Add unit tests for swift.proxy.controllers.base" 2015年10月30日 05:44:42 +00:00
Jenkins
0453730f93 Merge "Update admin guide with region." 2015年10月29日 02:21:17 +00:00
Jenkins
9a7795086c Merge "Add verification socket close causes StopIteration" 2015年10月28日 09:50:29 +00:00
Jenkins
410b48dfa5 Merge "SLO docs(tring): manifest params in table, code block; copyedits" 2015年10月28日 03:28:20 +00:00
Bill Huber
faef717cd3 Add unit tests for swift.proxy.controllers.base
This patch adds more unit tests to diminish missing pieces
of the coverage in the proxy_controllers_base unit test.
Change-Id: I85ba1955c681cc9d5b2a70ac31155678d2e5b6fd
2015年10月27日 09:26:46 -05:00
Peter Lisák
febdd6c1b4 Device marked to be removed in info about the ring.
Showing devices with 'DEL' mark if will be removed next rebalance.
Change-Id: I171aa8658b1c4ac1689ab9532fe65d114567baa7
2015年10月26日 13:26:21 +01:00
Jenkins
246e134275 Merge "Minor improvement to updater unit tests" 2015年10月26日 09:29:48 +00:00
Kota Tsuyuzaki
a4a5fcad8f Add unit tests for utils.validate_hash_path
This patch add some unit tests to prevent regression and to describe
validate_hash_path behavior, I found in review with
https://review.openstack.org/#/c/231864/
*bonus*
- Fix test_hash_path to use "with" syntax instead of "try/finally"
 for assigning a testing value into a global variable.
Change-Id: I948999a8fb8addb9a378dbf8bee853b205aeafad
2015年10月23日 23:00:54 -07:00
Samuel Merritt
e31ecb24b6 Get rid of contextlib.nested() for py3
contextlib.nested() is missing completely in Python 3.
Since 2.7, we can use multiple context managers in a 'with' statement,
like so:
 with thing1() as t1, thing2() as t2:
 do_stuff()
Now, if we had some code that needed to nest an arbitrary number of
context managers, there's stuff we could do with contextlib.ExitStack
and such... but we don't. We only use contextlib.nested() in tests to
set up bunches of mocks without crazy-deep indentation, and all that
stuff fits perfectly into multiple-context-manager 'with' statements.
Change-Id: Id472958b007948f05dbd4c7fb8cf3ffab58e2681
2015年10月23日 11:44:54 -07:00
Paul Dardeau
73e032049f Update admin guide with region.
Added region prefix to example commands for adding devices to ring.
Also updates description to include region prefix.
Change-Id: Ie6d6485b497cea973e37909b5b19b44946c8aa89
2015年10月23日 18:20:25 +00:00
Jenkins
a094560f0c Merge "node_timeout as float in configs" 2015年10月23日 16:49:03 +00:00
Alistair Coles
5d8d2e98ee Minor improvement to updater unit tests
Follow up for change I7c57bba053711a27d3802efe6f2a0bf53483a54f
The current tests won't prevent this kind of regression in the
updaters' __init__ methods:
 self.node_timeout = int(float(conf.get('node_timeout', 10)))
so this makes them a little tighter.
Change-Id: I60bd79ac392deb1e8a108357d48474dddd9028c1
2015年10月23日 16:38:24 +01:00
Alistair Coles
1a2b54fc0a Fix missing *-replicator conf sections in deployment guide
The doc for these sections was missing because of an rst error - the
source is there in rst file but didn't make it into the html output.
Add doc for per_diff and max_diffs in account and container doc sections.
Also, fix a bunch of other sphinx build errors and most of the warnings.
Change-Id: If9ed2619b2f92c6c65a94f41d8819db8726d3893
2015年10月23日 14:58:38 +01:00