Files
2a593174a5d74426e7e771fb65bc5ebd9de08c60
swift /test /unit /account
Alistair Coles bcecddd517 Consider tombstone count before shrinking a shard
Previously a shard might be shrunk if its object_count was fell below
the shrink_threshold. However, it is possible that a shard with few
objects has a large number of tombstones, which would result in a
larger than anticipated replication of rows to the acceptor shard.
With this patch, a shard's row count (i.e. the sum of tombstones and
objects) must be below the shrink_threshold before the shard will be
considered for shrinking.
A number of changes are made to enable tombstone count to be used in
shrinking decisions:
 - DatabaseBroker reclaim is enhanced to count remaining tombstones
 after rows have been reclaimed. A new TombstoneReclaimer class is
 added to encapsulate the reclaim process and tombstone count.
 - ShardRange has new 'tombstones' and 'row_count' attributes.
 - A 'tombstones' column is added to the Containerbroker shard_range
 table.
 - The sharder performs a reclaim prior to reporting shard container
 stats to the root container so that the tombstone count can be
 included.
 - The sharder uses 'row_count' rather than 'object_count' when
 evaluating if a shard range is a shrink candidate.
Change-Id: I41b86c19c243220b7f1c01c6ecee52835de972b6
2021年05月07日 18:41:18 +01:00
..
2010年07月12日 17:03:45 -05:00
2021年04月27日 12:04:41 +01:00
2021年04月27日 12:04:41 +01:00
2021年04月27日 12:04:41 +01:00