msg/Pipe: fix tight reconnect loop on connect failure

The fault() call in connect should not set onread=true since connect is
effectively a write path.  This was forcing the writer() into a tight
loop that repeatedly would call connect(); not very polite.

Changing that, we want to avoid treating this as a normal fault (with the
failure callback) and instead back off.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
workqueue: make debug output include active threads

Include active thread count in threadpool debug output.

Signed-off-by: Sage Weil <sage@inktank.com>
rgw: dump an error message if FCGX_Accept fails

Adding missing debug info.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
leveldb: fix accidental revert

In b85cde576e3444b10c275526ecf43b73bd21afe5

Signed-off-by: Sage Weil <sage@inktank.com>
librbd: validate copy size against proper snapshot id

Fixes: #3383
Signed-off-by: Dan Mick <dan.mick@inktank.com>
osd: return EOPNOTSUPP on bad class or method name

Currently we return EIO, which isn't particularly informative.

Signed-off-by: Sage Weil <sage@inktank.com>
librados: add assert_exists guard operation

Add a guard operation for writes that asserts that the object already
exists.  To avoid requiring new functionality on the OSD side, implement
this by including a STAT operation, and discard the results on the
client side.

Signed-off-by: Sage Weil <sage@inktank.com>
librbd: use assert_exists() to simplify copyup check

Previously we would explicitly STAT the object to see if it exists before
sending the write to the OSD.  Instead, send the write optimistically, and
assert that the object already exists.  This avoids an extra round trip in
the optimistic/common case, and makes the existence check in the initial
first-write case more expensive because we send the data payload along.

Signed-off-by: Sage Weil <sage@inktank.com>
osd/osd_types: make stat osd_op print nicely

No 0~0 crap.

Signed-off-by: Sage Weil <sage@inktank.com>
rgw_admin: do not throw error when start-date and end-date are not
passed to usage::trim()

Signed-off-by: caleb miles <caleb.miles@inktank.com>
Script that generates perl wrapper for teuthology tests

Signed-off-by: tamil <tamil.muthamizhan@inktank.com>
vstart.sh:  Use ./init-ceph instead of CEPH_BIN

This effectively reverts faddb80c4230acad2b4a17aa6cbf0c30ae8d24a9
which prevented vstart.sh from being used in an enviroment where
CEPH_BIN pointed to a make install target.

Signed-off-by: Sam Lang <sam.lang@inktank.com>
doc: Fixed usage and deleted legacy values.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
doc: Added hyperlink.

fixes: #3393

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
mds: fix #include for getcwd(), simplify

Always use getcwd().. it's more portable.

Signed-off-by: Sage Weil <sage@inktank.com>
doc: note raw format required for openstack/rbd

A couple people have been confused by this omission.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
leveldb: fix accidental submodule revert

a5eb72ba01bc74886170f2f6b97278ba5fc251d1

Signed-off-by: Sage Weil <sage@inktank.com>
mds: check getcwd() return value

warning: mds/MDS.cc:1586:27: ignoring return value of ‘char* getcwd(char*, size_t)’, declared with attribute warn_unused_result [-Wunused-result]

Signed-off-by: Sage Weil <sage@inktank.com>
osd: fix populate_obc_watchers() assert

There is one case where populate_obc_watchers gets called when the object
is missing: during a revert.  And in that case we *should* do the populate,
since all that is getting reverted is the object version.

Fixes: #3405
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Sam Just <sam.just@inktank.com>
doc: update copyright to include contributors, CC

Signed-off-by: Ross Turk <ross@inktank.com>