Obj replicator cleans up files where part dirs should be.

If a partition directory was a file instead of a directory, the
object-replicator would attempt to listdir() it, raise an exception, and
try again next iteration.  This condition could arise after running
xfs_repair.

Now, collect_jobs() will reap any partition directories which are
actually files.  Fixes bug 1045954.

Change-Id: Id65d3eab2effd61c3f6b25250611c88c907b2a16
format some code according to pep8

format some code according to pep8
	modified:   auditor.py
	modified:   reaper.py
	modified:   server.py

Change-Id: Ic6d8e000c711d17dcd9047cfeee7876b23ff0605
Breakout search_devs & add get_builder() for reuse

This moves search_devs into RingBuilder to make it accessible to other utils
that need to search the builder. Along the same lines this also adds a
load() call to get a RingBuilder instance when working with the builder files.

- This adds python-mock >= 0.7 as a dependency for unittests. On Ubuntu
  10.04 you'll have to pip install it, on 12.04 you can apt-get install
  it. Fedora 17+ should be able to yum install it.
- new pep8 compliance
- Fixed a small issue (undefined var) in swift-ring-builder when remove was
called but failed to find a match.

Change-Id: I2e02684235aa2f4e901a00858ae037091594c545
Fix pep8 issues

Fix pep8 issues in swift/obj/auditor.py

Change-Id: Iae6fe2c7399fd52455d66ba57360e2f7d9e017f3
Fix pep8 issues

Fix pep8 issues in swift/obj/expirer.py

Change-Id: Iba80aa5010f0c23e7fe1e5abc230a1c7f76687a8
swift constraints are now settable via config

Change previously hard-coded constants into config variables. This
allows deployers to tune their cluster more specifically based on
their needs. For example, a deployment that uses direct swift access
for public content may need to set a larger header value constraint to
allow for the full object name to be represented in the Content-
Disposition header (which browsers check to determine the name of a
downloaded object).

The new settings are set in the [swift-constraints] section of
/etc/swift/swift.conf. Comments were also added to this config file.

Cleaned up swift/common/constraints.py to pass pep8 1.3.3

Funtional tests now require constraints to be defined in /etc/test.conf or in
/etc/swift/swift.conf (in the case of running the functional tests against a
local swift cluster). To have any hope of tests passing, the defined
constraints must match the constraints on the tested cluster.

Removed a ton of "magic numbers" in both unit and functional tests.

Change-Id: Ie4588e052fd158314ddca6cd8fca9bc793311465
Merge "Obj replicator cleans up files where part dirs should be."
Merge "Fix pep8 issues"
Merge "Fix pep8 issues"
Merge "format some code according to pep8"
Merge "Breakout search_devs & add get_builder() for reuse"
Merge "swift constraints are now settable via config"
container_info returns a dict

This change refactors container_info to return a dict instead of a tuple
with 6 (and counting...) values.

Also adds container size to cached info.

Change-Id: If68a06ab170504fbf07323354f3d0e073850493d
obj replicator speed up

Change-Id: If02b573353dedea9c2368ce4733fe97599229b2e
Adds Error Handling to swift-drive-audit for missing or unreadable /var/log/kern.log

Fixes Bug 1049081

Change-Id: If977080350cc5cdb6bc633b6af7d3c490ed23d46
Merge "container_info returns a dict"
Merge "Adds Error Handling to swift-drive-audit for missing or unreadable /var/log/kern.log"
added errno.EINVAL check to fallocate

On some systems (eg Illumos), posix_fallocate() returns
EINVAL when the underlying filesystem doesn't support the
operation. On Linux, the fallocate() call returns
EOPNOTSUPP.

The need for this patch was revealed by Victor Rodionov
<victor.rodionov@nexenta.com>.

Change-Id: I06fa9d49e7ec4084135843b7e0c91948dc098d27
added disable_fallocate info to docs

Change-Id: I8130e258d77f47bfa28ecf79a51a6e34671ada22
new more helpful README

Change-Id: Ie5e88178e061955aea8759e5451a2d33ccc76511