Commit Graph

41330 Commits

Author SHA1 Message Date
Sage Weil
ad4cc4a7c8 Merge pull request #4448 from tchaikov/wip-check-libxml2-and-libcurl
configure.ac: check for libcurl and libxml2 if build libs3

Reviewed-by: Sage Weil <sage@redhat.com>
2015-04-23 08:59:12 -07:00
Sage Weil
9d9ad83b28 Merge pull request #4446 from osynge/wip-expat
libexpat is now used for rgw

Reviewed-by: Sage Weil <sage@redhat.com>
2015-04-23 08:48:13 -07:00
Kefu Chai
07cfc83de6 Merge pull request #4444 from big-henry/wip-throttle
common: fix Throttle - unable to reenable throttling after disabling it

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-04-23 23:34:51 +08:00
Henry Chang
92574ab8f6 Throttle: reset max only if max changed
Save some CPU cycles.

Signed-off-by: Henry Chang <henry@bigtera.com>
2015-04-23 22:23:01 +08:00
Henry Chang
d7de5858ca Throttle: fix wait/get() with new max
We were unable to set a new non-zero max if the original max was 0.
Fix it. Also, add test cases for it.

Signed-off-by: Henry Chang <henry@bigtera.com>
2015-04-23 22:23:01 +08:00
Kefu Chai
62522b0345 configure.ac: check for libcurl and libxml2 if build libs3
Fixes: #11458
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-04-23 20:32:30 +08:00
Kefu Chai
bc8d14db3f Throttle: add more constness
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-04-23 16:49:54 +08:00
Kefu Chai
127c931ca6 Throttle: improve doxygen comments in Throttle
* reindent a line

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-04-23 16:49:54 +08:00
Owen Synge
2b2c5d18e1 libexpat is now used for rgw
Check for expat.h
check libexpat has method XML_Parse.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-04-23 10:14:33 +02:00
Josh Durgin
2e8d476e7a Merge pull request #4435 from ceph/wip-11451
rgw: fix s3 list buckets

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-04-22 16:36:44 -07:00
Yehuda Sadeh
be4355ad8e rgw-admin: a tool to fix object locator issue
Objects that start with underscore need to have an object locator,
this is due to an old behavior that we need to retain. Some objects
might have been created without the locator. This tool creates a new
rados object with the appropriate locator.

Syntax:

$ ./radosgw-admin bucket check --check-head-obj-locator \
                               --bucket=<bucket> [--fix]

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2015-04-22 15:51:38 -07:00
Yehuda Sadeh
3d4a1d20b8 rgw: set a special object locator if object starts with underscore
Fixes: #11442
Backport: hammer

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2015-04-22 13:11:26 -07:00
Yehuda Sadeh
98b59bae7c rgw: fix s3 list buckets
Fixes: #11451
Backport: hammer
Got broken in commit:7dd54fa3621c04c8ea5723fb1bc06b91d81a0c6c.
Resurrect the option to list unlimited number of buckets using the S3
api.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2015-04-22 13:09:45 -07:00
Jason Dillaman
0b378942c4 librbd: updated cache max objects calculation
The previous calculation was based upon the image's object size.
Since the cache stores smaller bufferheads, the object size is not
a good indicator of cache usage and was resulting in objects being
evicted from the cache too often.  Instead, base the max number of
objects on the memory load required to store the extra metadata
for the objects.

Fixes: #7385
Backport: firefly, hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-04-22 11:27:35 -04:00
Kefu Chai
89262abc53 Merge pull request #4426 from liewegas/wip-11330
logrotate: prefer service over invoke-rc.d

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-04-22 17:18:56 +08:00
Orit Wasserman
037de56ca9 Merge pull request #4425 from ceph/wip-10243
civetweb: update max num of threads
2015-04-22 10:38:33 +02:00
Kefu Chai
8d9905d5d9 Merge pull request #4421 from dachary/wip-11441-osd-bench
tests: osd-bench.sh must be verbose on failure

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-04-22 15:37:54 +08:00
Loic Dachary
d80fc8efea Merge pull request #4430 from zhouyuan/fix_make_debs
misc: fix make debs script

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-04-22 09:35:27 +02:00
Yan, Zheng
c0f2f0967e Merge pull request #4427 from big-henry/wip-mds-fix-integer-truncation
mds: fix integer truncation
2015-04-22 15:20:54 +08:00
Yuan Zhou
6fd356b935 misc: fix make debs script
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
2015-04-22 14:34:42 +08:00
Kefu Chai
2731db5de7 Merge pull request #4428 from wkennington/master.pgrefdebugging
configure.ac: fix the disablement of pgrefdebugging

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-04-22 13:58:21 +08:00
William A. Kennington III
8e026c781c Fix the disablement of pgrefdebugging
Currently, if you add the flag --disable-pgrefdebugging during configure
it enables pgrefdebugging. The only way for it to actually be disabled
is to remove the flag entirely. This patch makes the flag respect the
--enable and --disable options correctly. Therefore,
--enable-pgrefdebugging is the only way to enable this now and
--enable-pgrefdebugging=no and --disable-pgrefdebugging work as
expected.

Signed-off-by: William A. Kennington III <william@wkennington.com>
2015-04-21 22:32:54 -07:00
Henry Chang
37edd162a8 mds: fix integer truncation
Client ID is a 64-bit integer. Unlike Ceph daemons, it may go beyond
2147483647 and cause problems.

Signed-off-by: Henry Chang <henry@bigtera.com>
2015-04-22 12:17:39 +08:00
Kefu Chai
56e96f0e30 Merge pull request #4376 from majianpeng/needs-recovery
osd: fix bugs for PG::needs_recovery()

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-04-22 10:49:35 +08:00
Kefu Chai
927f0f9f28 Merge pull request #4269 from majianpeng/add-recoverable
osd: For ec pool recovery, only for can recoverable object.

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-04-22 10:37:05 +08:00
Kefu Chai
5d1442ef28 Merge pull request #4222 from majianpeng/scrub-fix1
osd/PG: check scrub state when handle CEPH_OSD_OP_SCRUB_MAP.

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-04-22 10:06:40 +08:00
Jianpeng Ma
8f30db8521 test: add test-case for repair unrecovery-ec pg.
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-04-22 09:47:51 +08:00
Jianpeng Ma
bdd6205408 osd: Remove the duplicated func MissingLoc::get_all_missing.
It is the same as MissingLoc::get_needs_recovery.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-04-22 09:47:51 +08:00
Jianpeng Ma
b16b080332 osd: For object op, first check object whether unfound.
If object unfound, asap return -EIO.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-04-22 09:47:50 +08:00
Jianpeng Ma
d51806f5b3 osd: Fix ec pg repair endless when met unrecover object.
In repair_object, if bad_peer is replica, it don't add soid in
MissingLoc for ec pool. If there are more bad replica for ec pool
which cause object can't recover, the later recoverying will endless.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-04-22 09:47:50 +08:00
Jianpeng Ma
f8504700c8 PG: For needs_recovery, asap return if need recover.
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-04-22 09:17:39 +08:00
Jianpeng Ma
34cb1f0cce PG: remove the duplicated code.
assert(!actingbackfill.empty()) is equal to
assert(actingbackfill.end() != actingbackfill.begin()).

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-04-22 09:11:11 +08:00
Jianpeng Ma
f4e7d4a9c1 PG: fix logic error: don't set need_recovery if peer_missing don't have acting osd.
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-04-22 09:11:11 +08:00
Sage Weil
40203f711d auth: return error code from encrypt/decrypt; make error string optional
This is simpler for a lot of callers.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
7762f1886c auth: optimize crypto++ key context
The cbc appears to be stateful, but the key is not.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
973cd1c00a auth/Crypto: optimize libnss key
Allocate the key and slot once per key instead of once per encrypt/
decrypt operation.  This improves things by a factor of almost 4x
for my microbenchmark.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
16b3515af3 auth: refactor crypto key context
Cache all of the crypto key context in a new CryptoKeyHandler struct that
is attached to CryptoKey.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
fb4b6c52d8 unittest_crypto: benchmark 100,000 CryptoKey::encrypt() calls
Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
8d16d4ce14 auth/cephx: optimize signature check
The encode_encrypt() helper will generate a bufferlist with a simple
structure.  Profiles seem to indicate this is taking a large amount of time
in the message receive path.

Avoid the encode overhead since we have a tiny buffer with a fixed and
known structure.

Reported-by: Andreas Bluemle <andreas.bluemle@itxperts.de>
Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
4e14a5fedb auth/cephx: move signature calc into helper
Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
e972a69511 auth/Crypto: avoid memcpy on libnss crypto operation
Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
e874a9b7d2 do_autogen.sh: unambiguously use nss unless user asks for cryptopp
Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
ad5a1549f4 auth: make CryptoHandler implementations totally private
There is no need to expose these implementations outside Crypto.cc.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 17:00:27 -07:00
Sage Weil
6063a21f9e logrotate.conf: prefer service over invoke-rc.d
On trusty 14.04, service works but invoke-rc.d does not (but is present).

Fixes: #11330
Reported-by: Wim Heirman <wim@heirman.net>
Signed-off-by: Sage Weil <sage@redhat.com>
2015-04-21 16:08:09 -07:00
Loic Dachary
8aea730f69 tests: osd-bench.sh must be verbose on failure
When a command fail as it should but it does not contain the expected
output, display the entire output to confirm it's a false negative.

http://tracker.ceph.com/issues/11441 Fixes: #11441

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-04-21 23:35:28 +02:00
Loic Dachary
14cb7b8f59 tests: convert osd-bench.sh to ceph-helpers.sh
Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-04-21 23:35:28 +02:00
Loic Dachary
5871781b10 ceph-helpers: implement test_expect_failure
To display the output in case the command did not fail with the expected
output.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-04-21 23:35:28 +02:00
Sage Weil
67990c57a6 Merge pull request #4399 from trociny/fix-osd_df_avgutil
mon: osd df: fix average_util calculation

Reviewed-by: Sage Weil <sage@redhat.com>
2015-04-21 14:27:48 -07:00
Gregory Farnum
1c8913cf2c Merge pull request #4386 from ceph/wip-10657
mds: warn when clients are not advancing their oldest_client_tid

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-04-21 14:19:21 -07:00
Gregory Farnum
881cb27426 Merge pull request #4331 from ceph/wip-mds-misc
Wip mds misc

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-04-21 14:13:09 -07:00