fix coverity cid 1395314: it's invalid to pass a negative value to close function, and we have closed socket in net.connect/nonblock_connect in error cases indeed
Signed-off-by: liuchang0812 <liuchang0812@gmail.com>
- It currently only supports running with filestore
- Testing is executed while running on a ZFS partition
- All disktypes and naming is different on FreeBSD
- Partitioning and tools are not workable on FreeBSD
- add diagnostic timeout
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
if fails and object already exists then retry. This improves first obj
write performance on the expense of overwrites.
Fixes: http://tracker.ceph.com/issues/18622
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
Way back in 9ea02b8410 we defined the
SNAPMAPPER feature such that it set bits 32-63 by sign-extending a negative
int32_t to int64_t. In 4255b5c2fb it was
fixed. This affected v0.58-657-g9ea02b8 to v0.65-263-g4255b5c.
The workaround santized features whenever the top bit 63 was set to be the
intended set of features (bits 0-32). Only buggy peers in that range
ever set bit 63.
Since these versions are truly ancient (pre-dumpling) and no clients
should be that old, we are dropping the workaround. Note that the Linux
kernel client never had this bug: 2b3e0c905af43cfe402a2ef3f800be5dc1684005
went from 30 bits used to 38 bits defiend with the workaround in place.
We deprecate the bit now (i.e., stop paying attention to this bit). After
another extended period of time we'll eventually be able to retire
and reuse it.
Signed-off-by: Sage Weil <sage@redhat.com>
The mon we are talking to may be an old ceph-mon with the prior meanging of
the SERVER_KRAKEN bit; use the mask to disambiguate instead of testing for
two featurse explicitly.
Signed-off-by: Sage Weil <sage@redhat.com>
Test for multiple features all being set together. Note that this can be
used with the CEPH_FEATUREMASK_ defines to safely test for reused feature
bits.
Signed-off-by: Sage Weil <sage@redhat.com>
This lets you test a feature succintly by name, *AND* makes use of the
FEATUREMASK so that it can be used on bitmasks that may come from old
versions with prior usages of the bit. This makes it usable for data
type encoding or with client-provided bits.
Signed-off-by: Sage Weil <sage@redhat.com>
https://github.com/ceph/ceph/pull/13194 introduced a regression:
2017-02-06T16:14:23.162 INFO:tasks.thrashosds.thrasher:Traceback (most recent call last):
File "/home/teuthworker/src/github.com_ceph_ceph_master/qa/tasks/ceph_manager.py", line 722, in wrapper
return func(self)
File "/home/teuthworker/src/github.com_ceph_ceph_master/qa/tasks/ceph_manager.py", line 839, in do_thrash
self.choose_action()()
File "/home/teuthworker/src/github.com_ceph_ceph_master/qa/tasks/ceph_manager.py", line 305, in kill_osd
output = proc.stderr.getvalue()
AttributeError: 'NoneType' object has no attribute 'getvalue'
This is because the original patch failed to pass "stderr=StringIO()" to run().
Fixes: http://tracker.ceph.com/issues/16263
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Signed-off-by: Kefu Chai <kchai@redhat.com>
We weren't carefully registering the creating PG. In
particular, the current osd mappings (acting, up, etc.)
weren't getting filled in, which meant the PG wasn't
(necessarily) mapped to an OSD until the OSDMap updated
and we recalculated mappings.
Fix by sending us through the common code path so that
all fields get updated properly.
Fixes: http://tracker.ceph.com/issues/18298
Signed-off-by: Sage Weil <sage@redhat.com>
The openstack swift will return 401 rather than 403 when
the anon user has no permission to get objects.
Fixes: http://tracker.ceph.com/issues/18806
Signed-off-by: Jing Wenjun <jingwenjun@cmss.chinamobile.com>
otherwise we could concat None with a string on connection problem.
which will result in TypeError. and the caller will print misleading
error like
Error connecting to cluster: TypeError
see also #12934
Signed-off-by: Kefu Chai <kchai@redhat.com>
librados could be referencing the wrong symbol when calling the
destructor. for example, a variable of type AioGetxattrsData in
IoCtxImpl.cc) could be destructed using the destructor defined in
librados.cc. this is reproduciable using
ceph_test_rados_api_aio --gtest_filter=LibRadosAio.XattrIter
Signed-off-by: Kefu Chai <kchai@redhat.com>