Files
swift/test/unit/proxy/controllers/test_obj.py
Alistair Coles 88252cdfd6 Fix flakey EC frag duplication policy test
Fixes test_GET_with_duplicate_but_sufficient_frag_indexes
failing intermittently.

The original non-duplicated-frags version of the test in
TestECObjController verified that the controller would search all
primaries, ignoring repeated fragment indexes and finally find the
last necessary unique fragment on the first handoff. The version of
the test for a duplicated fragments policy in
TestECDuplicationObjController had the final necessary fragment on the
first of the 'duplicate' primaries (index ec_num_unique_fragments + 1)
so there was a chance that it would be found before all of the first
ec_num_unique_fragments had been tried, causing the test to fail as
reported in the linked bug report.

This patch moves the final necessary unique fragment to the first
handoff (index 2 * index ec_num_unique_fragments + 1) and aligns the
test with the intent of the equivalent test in TestECObjController,
so that the two tests can be moved to a single implementation in an
inherited mixin.

test_GET_with_duplicate_but_insufficient_frag is also moved to the
new mixin since the two implementations of that test were also very
similar.

Change-Id: I4d99dea8e941bccb6fa610bab39e38a6976a3721
Closes-Bug: #1710951
2017-08-16 12:20:05 +01:00

191 KiB