Fix logging issue when services stop on py26

On older versions of python 2.6, exceptions would be spewed to the error
log whenever a service would stop.  This gets magnified by the
container-updater which seems to do it with every pass.  This catches
and squelches the error.

Change-Id: I5944c1620c62cf0868b70dae7d7e2acd56bf8211
Closes-Bug: #1306027
Unit test for common.utils.cache_from_env

The behavior of common.utils.cache_from_env
was changed by https://review.openstack.org/#/c/89488/.
This patch adds unit test for that function.

Change-Id: If757e12990c971325f7705731ef529a7e2a9eee7
In-process swift server for functional tests

Provide a way to run the functional tests using a p/a/c/o server setup
in the same process running the nosetests infrastructure.

By setting the environment variable, SWIFT_TEST_IN_PROCESS, to a true
value, the functional test framework will construct a set of proxy,
account, container and object servers running in the same process that
is running the functional tests, ignoring any external swift
service. This in-process swift environment is akin to the one used in
test/unit/proxy/test_server.py.

Setting that same environment variable to a false value will ensure the
in-process servers are not used.

When the above environment variable is not present, and the
/etc/swift/test.conf is _not_ present (or present but empty) on the
system where the functional tests are executing, the in-process
environment will be used. Previously, if no /etc/swift/test.conf file
was found, the tests would just be marked as skipped.

Using this in-process method allows one to gather code coverage using
the functional tests to exercise code paths, in addition to the unit
tests, or more easily debug existing functional tests, or even write new
ones.

There are two constraints that are changed for use with the in-process
functional tests: max_file_size is lowered to roughly 8 MB, and
client_timeout is set to 4s.

Change-Id: I5acd65e3068868d6509feae1d1954237d37fad45
Sleep between object ZBF process forks

We've found that, on fresh systems where the ZBF run completes
almost instantaneously, the Swift logs (syslog by default) get
filled-up with object ZBF scan start and completion messages.
This patch calls self._sleep() between ZBF scan runs to cut-down
on these messages and the related unnecessary ZBF scan runs
without impacting the integrity of the object auditing process.

Change-Id: I057c5ca235467cfa115a7a3d44e21c350900059a
Merge "Unit test for common.utils.cache_from_env"
Merge "Sleep between object ZBF process forks"
Merge tag '1.13.1'

Swift 1.13.1

Change-Id: I551d48185eade9dea8b9bbba2a9a58609112512a