swift/test/unit/common
Clay Gerrard c70abba529 Adjust replica count before pulling parts from failed devices
When your device count falls below your replica count you can either add
devices or reduce the replica count.

Trying to reduce your replica count fails about half the time because
removing parts from from failed devices temporarily invalidates your
_replica2part2dev table with NONE_DEV which can result in an IndexError
in _adjust_replica2part2dev_size.

If you adjust the replica count first you won't have to worry about
tracking unassigned parts from failed devices.

Closes-Bug: #1558751

Change-Id: I99dc776fd260a2ba68ca77d7b5ed5120d10b06de
2016-03-17 19:27:24 +00:00
..
middleware Merge "clear pycache and remove all pyc/pyo before starting unit test" 2016-03-16 11:38:22 +00:00
ring Adjust replica count before pulling parts from failed devices 2016-03-17 19:27:24 +00:00
__init__.py Initial commit of Swift code 2010-07-12 17:03:45 -05:00
corrupted_example.db Real files for bad databases. 2011-08-02 18:21:25 +00:00
malformed_example.db Real files for bad databases. 2011-08-02 18:21:25 +00:00
test_base_storage_server.py pep8 fix: assertEquals -> assertEqual 2015-10-11 12:57:25 +02:00
test_bufferedhttp.py remove remaining simplejson uses, prefer standard library import 2015-11-16 12:34:24 -08:00
test_constraints.py pep8 fix: assertEquals -> assertEqual 2015-10-11 12:57:25 +02:00
test_container_sync_realms.py Fix unit tests failing in some cases 2014-10-09 22:04:53 +05:30
test_daemon.py pep8 fix: assertEquals -> assertEqual 2015-10-11 12:57:25 +02:00
test_db_replicator.py Log error if a local device not identified in replicator 2015-11-21 14:04:32 +01:00
test_db.py remove remaining simplejson uses, prefer standard library import 2015-11-16 12:34:24 -08:00
test_direct_client.py Move HeaderKeyDict to avoid an inline import 2016-03-07 12:26:48 -08:00
test_exceptions.py Remove swiftclient dep on direct_client 2013-12-24 03:11:43 -08:00
test_header_key_dict.py Move HeaderKeyDict to avoid an inline import 2016-03-07 12:26:48 -08:00
test_internal_client.py Move HeaderKeyDict to avoid an inline import 2016-03-07 12:26:48 -08:00
test_manager.py Replace assertEqual(None, *) with assertIsNone in tests 2016-02-16 23:49:06 +08:00
test_memcached.py Make _get_addr() method a function in utils. 2016-01-12 21:09:48 -08:00
test_request_helpers.py Fix proxy-server's support for chunked transferring in GET object 2016-03-02 22:56:13 +09:00
test_splice.py pep8 fix: assertEquals -> assertEqual 2015-10-11 12:57:25 +02:00
test_storage_policy.py Add support for storage policies to have more than one name 2015-12-10 14:47:23 +13:00
test_swob.py Move HeaderKeyDict to avoid an inline import 2016-03-07 12:26:48 -08:00
test_utils.py Move HeaderKeyDict to avoid an inline import 2016-03-07 12:26:48 -08:00
test_wsgi.py Replace assertEqual(None, *) with assertIsNone in tests 2016-02-16 23:49:06 +08:00