fix empty body getter bug 1067923

Change-Id: Ifd609f305ee878c39ea4e6840ed8fa9369595cfa
fix bug with swob.Request accept property

Change-Id: I2c1246b9bbd1d3ab22c2a035b735d937dd90da11
Honor sample_rate in StatsD logging.

It's there to let administrators turn down the barrage of stats data
that StatsD must cope with, but it wasn't actually honored. Worse, if
the sample rate was set to e.g. 0.2, the stats would all be multiplied
by its inverse, e.g. 2. This patch actually drops packets when
sample_rate < 1, so you get correct measurements.

Fortunately, the default sample rate is 1 (i.e. drop nothing), and
multiplying by 1/1 doesn't change anything, so stats with the default
sample rate of 1.0 are, and have been, just fine.

Fixes bug 1065643.

Also, make the two touched files compliant with pep8 v1.3.3.

Change-Id: I66663144009ae4c9ee96f6a111745d8f5d2f5ca3
Random pep8 fixes!

This patch merely fixes a selection of files to the point where
pep8 1.3.3 is happy. Most of the errors are indentation related to
continued lines (E126, E127, E128), bracket positions (E124) and the
use of backslash (E502).

Patch 2 fixes David's comments regarding backslash and an odd comment
 - thanks David!

Change-Id: I4fbd77ecf5395743cb96acb95fa946c322c16560
Fix version requirement for mock library.

One of the tests uses mock.call, which is only available in version
0.8.0 and up.

Fixes bug 1066274.

Change-Id: I77e4de0908f93326992fc4d4af4a7e54e60b5585
do not dump_recon_cache on limited obj replic

Change-Id: I38e38607ba9c5cf331c216e4c81582d23c58eeca
Make StatsD tests less flaky.

There have been a bunch of Jenkins failures lately where the StatsD
tests fail because they can't bind to their desired port. There's
nothing special about the particular port they're using, so now we let
the kernel pick an available one for us.

This also lets us get rid of a sleep() in the test that looked like an
attempt to alleviate EADDRINUSE errors, so now in the happy case, the
tests are a few fractions of a second faster.

Change-Id: Idee11349254107a59643539b1566f3588eee7ef4
Merge "fix bug with swob.Request accept property"
Merge "Random pep8 fixes!"
Relax mount point name checking.

In general, Linux does not care about what a mount point is named as
long as it is a vaild directory name (no / or null characters).
However, that is too relaxed for swift, which will pass that mount
point name around as part of url path construction all over the
place.  To make sure that the mount point name was sane from that POV,
Swift was using isalnum to verify that the mount point name was sane,
which is overly restrictive.

This patch replaces that test with a test that verifies that the name
has no characters that need to be URL encoded.

The specific use case this enables is allowing mount points to be
named according to the UUID of the filesystem that is being mounted,
which will make Swift more robust in the face of device name instability.

Change-Id: I4d49b21c1783e97c16d3f394c2171f1f80eea058
removed duplicate in AUTHORS file

Change-Id: Ia430637f24d883ee166cb6529dde03049cc06120
Remove replication prioritization

Turns out this prioritization causes stampedes right after capacity
additions (especially on smaller clusters), which means the things it
prioritizes don't get done for several passes anyway, which means the
prioritization isn't solving the problem it was designed to do, and
it causes non-productive load spikes instead. :/

Getting rid of the prioritization doesn't make things go any slower
overall, could make things actually go faster since there are less
collisions, and evens out the load.

Change-Id: I4938bcd12d9a21fad635cfe772897e4c151f8a95
Merge "fix empty body getter bug 1067923"
Merge "Relax mount point name checking."
Merge "Remove replication prioritization"
Merge "do not dump_recon_cache on limited obj replic"
Merge "Make StatsD tests less flaky."
path_qs for swob.Request

Add path_qs property to swob.Request. First of all this property
has webob.Request, also this property can be used in swift3 middleware
for generate canonical string, if webob will be replaced in swift3 with
swob (https://github.com/vitoordaz/swift3/commit/2b36fbd477f6573108100ec85a1594877adeaacb).

Change-Id: Idf58096baaf7830dd0d624ea6c72eda1eb91ff0d
Fixes Ilegal chunk encoding by the test_client

test_client sends a wrong size indication when testing
chunked data.
For example instead of sending:
   5\r\nabcde\r\n (which is inline with the standard)
The client would send:
   0x5\r\nabcde\r\n

On branch bp/wsgi-application-interface-2
  modified:   test/functional/swift_test_client.py

Change-Id: I7597dcd24adade009aead66f67674f361f3fe4fa
Fixes: Bug #1070036
Implements: Blueprint wsgi-application-interface
Add OpenStack trove classifier for PyPI

Add trove classifier to have swift listed among the
other OpenStack-related projets on PyPI to reserve
the name, even though we won't release packages there.

Change-Id: I2c6cd2e37ea55d2bc2ddbba813ee2a190b1c90a9
Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>