swift/etc
Mahati Chamarthy 69f7be99a6 Move documented reclaim_age option to correct location
The reclaim_age is a DiskFile option, it doesn't make sense for two
different object services or nodes to use different values.

I also driveby cleanup the reclaim_age plumbing from get_hashes to
cleanup_ondisk_files since it's a method on the Manager and has access
to the configured reclaim_age.  This fixes a bug where finalize_put
wouldn't use the [DEFAULT]/object-server configured reclaim_age - which
is normally benign but leads to weird behavior on DELETE requests with
really small reclaim_age.

There's a couple of places in the replicator and reconstructor that
reach into their manager to borrow the reclaim_age when emptying out
the aborted PUTs that failed to cleanup their files in tmp - but that
timeout doesn't really need to be coupled with reclaim_age and that
method could have just as reasonably been implemented on the Manager.

UpgradeImpact: Previously the reclaim_age was documented to be
configurable in various object-* services config sections, but that did
not work correctly unless you also configured the option for the
object-server because of REPLICATE request rehash cleanup.  All object
services must use the same reclaim_age.  If you require a non-default
reclaim age it should be set in the [DEFAULT] section.  If there are
different non-default values, the greater should be used for all object
services and configured only in the [DEFAULT] section.

If you specify a reclaim_age value in any object related config you
should move it to *only* the [DEFAULT] section before you upgrade.  If
you configure a reclaim_age less that your consistency window you are
likely to be eaten by a Grue.

Closes-Bug: #1626296

Change-Id: I2b9189941ac29f6e3be69f76ff1c416315270916
Co-Authored-By: Clay Gerrard <clay.gerrard@gmail.com>
2017-01-13 03:10:47 +00:00
..
account-server.conf-sample Fixed rysnc -> rsync typo 2016-10-19 20:17:00 +02:00
container-reconciler.conf-sample Change schedule priority of daemon/server in config 2016-08-10 23:56:15 +02:00
container-server.conf-sample Fixed rysnc -> rsync typo 2016-10-19 20:17:00 +02:00
container-sync-realms.conf-sample Removing some redundant words 2016-03-25 17:20:24 +07:00
dispersion.conf-sample Fix swift-dispersion in multi-region setups 2016-06-01 15:35:47 +02:00
drive-audit.conf-sample Added comment for "user" option in drive-audit config 2016-11-21 22:13:11 +01:00
internal-client.conf-sample Removed default value for log_statsd_host 2016-02-10 10:36:59 -06:00
memcache.conf-sample fixups for ipv6 memcache_servers docs 2016-01-12 21:08:58 -08:00
mime.types-sample PEP 8 compliance and small modification to mime.types file 2010-11-23 19:26:02 -06:00
object-expirer.conf-sample Documantation enhancements of nice/ionice feature 2016-08-19 07:39:49 +02:00
object-server.conf-sample Move documented reclaim_age option to correct location 2017-01-13 03:10:47 +00:00
proxy-server.conf-sample SLO: Concurrently HEAD segments 2016-11-16 12:12:06 -08:00
rsyncd.conf-sample Allows to configure the rsync modules where the replicators will send data 2015-09-07 08:00:18 +02:00
swift-rsyslog.conf-sample Add sample rsyslog.conf. 2013-06-25 10:24:26 +08:00
swift.conf-sample Enable object body and metadata encryption 2016-06-30 23:31:15 -07:00