swift/test/unit/container
Samuel Merritt 8e651a2d3d Add fallocate_reserve to account and container servers.
The object server can be configured to leave a certain amount of disk
space free; default is 1%. This is useful in avoiding 100%-full
filesystems, as those can get Swift in a state where the filesystem is
too full to write tombstones, so you can't delete objects to free up
space.

When a cluster has accounts/containers and objects on the same disks,
then you can wind up with a 100%-full disk since account and container
servers don't respect fallocate_reserve. This commit makes account and
container servers respect fallocate_reserve so that disks shared
between account/container and object rings won't get 100% full.

When a disk's free space falls below the configured reserve, account
and container PUT, POST, and REPLICATE requests will fail with a 507
status code. These are the operations that can significantly increase
the disk space used by a given database.

I called the parameter "fallocate_reserve" for consistency with the
object server. No actual fallocate() call happens under Swift's
control in the account or container servers (sqlite3 might make such a
call, but it's out of our hands).

Change-Id: I083442eef14bf83c0ea717b1decb3e6b56dbf1d0
2018-07-18 17:27:11 +10:00
..
__init__.py Initial commit of Swift code 2010-07-12 17:03:45 -05:00
test_auditor.py Added unit test cases for container/auditor.py 2015-11-20 16:07:17 +00:00
test_backend.py Fix shard_max_row in ContainerBroker.get_replication_info() 2018-06-13 12:20:17 +01:00
test_reconciler.py Allow InternalClient to container/object listing with prefix 2017-12-25 08:28:02 +00:00
test_replicator.py Only try to fetch or sync shard ranges if the remote supports sharding 2018-06-14 16:58:29 -07:00
test_server.py Add fallocate_reserve to account and container servers. 2018-07-18 17:27:11 +10:00
test_sharder.py Change default sharding threshold to 1,000,000 objects 2018-05-29 10:48:51 -07:00
test_sync_store.py Cleanup test tempdirs in tearDown 2017-09-01 15:34:30 +01:00
test_sync.py Symlink implementation. 2017-12-13 21:26:12 +00:00
test_updater.py Merge "container-updater: Always report zero objects/bytes used for shards" 2018-06-22 21:45:56 +00:00