Commit Graph

35840 Commits

Author SHA1 Message Date
Loic Dachary
75f0fb2693 documentation: erasure code profile update
The plugins are made a sub-section of the erasure code profile
section. The k and m parameters are removed from erasure code profile
documentation. They were added for simplicity in the first version
because there was only one plugin. But they should really be in the
plugin documentation.

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-14 01:01:21 +02:00
Loic Dachary
04e40737f1 Merge pull request #2478 from ceph/wip-9445
global: fix hang when segv happens inside logging code

Reviewed-by: Loic Dachary <loic-201408@dachary.org>
2014-09-13 17:32:57 +02:00
Gregory Farnum
e06f4251ac Merge pull request #2469 from ceph/wip-9427-rewrite
mds: update segment references during journal rewrite

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-09-12 17:35:54 -07:00
Sage Weil
a8c943a0e4 log: add simple test to verify an internal SEGV doesn't hang
Test that the segv injection works.

Test that a segv while logging something doesn't hang when the signal
handlers are installed.  Note that this fails/hangs without the previous
fix.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-12 17:18:01 -07:00
Sage Weil
e3fe18aabe global/signal_handler: do not log if SEGV originated inside log code
Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-12 15:25:03 -07:00
Sage Weil
558463e815 log: add Log::is_inside_log_lock()
Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-12 15:24:50 -07:00
John Spray
386f2d7c82 mds: update segment references during journal rewrite
... to avoid leaving log events that reference log
segments by offsets which no longer exist.

Signed-off-by: John Spray <john.spray@redhat.com>
2014-09-12 23:05:38 +01:00
John Spray
9f4c687288 Merge pull request #2471 from ceph/wip-9446
mon: fix MDS health detail output

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-12 16:47:52 +01:00
John Spray
9ba4e78f00 mon: fix MDS health detail output
I fat fingered a couple of things here.

Signed-off-by: John Spray <john.spray@redhat.com>
2014-09-12 16:43:20 +01:00
Loic Dachary
5283460382 Merge pull request #2468 from dachary/wip-always-create-pidfile
daemons: write pid file even when told not to daemonize

Reviewed-by: Loic Dachary <loic-201408@dachary.org>
Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-12 16:00:27 +02:00
Alexandre Oliva
bccb0eb648 daemons: write pid file even when told not to daemonize
systemd wants to run daemons in foreground, but daemons wouldn't write
out the pid file with -f.  Fixed.

Signed-off-by: Alexandre Oliva <oliva@gnu.org>
2014-09-12 12:05:56 +02:00
Loic Dachary
62ee5fc1f4 Merge pull request #2464 from dachary/wip-9429-bench
erasure-code: fix erasure_code_benchmark goop

Reviewed-by: Janne Grunau <j@jannau.net>
2014-09-12 11:30:31 +02:00
Sage Weil
e01e0c274e Merge pull request #2416 from xiaoxichen/make_crush_private
Change CrushWrapper::crush to private

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-11 20:41:07 -07:00
Sage Weil
69d3594f9e Merge pull request #2450 from dachary/wip-9413-erasure-code-version-check
erasure-code: mon, osd etc. depend on the plugins
2014-09-11 19:56:04 -07:00
Loic Dachary
b7bdb93ff7 erasure-code: fix erasure_code_benchmark goop
Using a stringstream that is only displayed on error when calling the
erasure code factory, instead of cerr. The user expects the output to be
clean when there is no error.

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-11 22:24:53 +02:00
Loic Dachary
60d65daa96 Merge pull request #2409 from apeters1971/wip-ec-isa-table-cache-refac-master
EC-ISA: add intelligent table cache

Reviewed-by: Loic Dachary <loic-201408@dachary.org>
2014-09-11 21:56:19 +02:00
John Wilkins
2fbe82dfeb doc: Fixed syntax error.
Signed-off-by: John Wilkins <jowilki@redhat.com>
2014-09-11 10:50:42 -07:00
John Wilkins
7dbf750fc5 doc: Updated authentication notes. Fixed syntax error.
Signed-off-by: John Wilkins <jowilki@redhat.com>
2014-09-11 10:50:22 -07:00
Loic Dachary
9e6d05afb4 Merge pull request #2459 from ceph/wip-7934
test: Fix ceph_test_rados_watch_notify to delete the pools it creates

Reviewed-by: Loic Dachary <loic-201408@dachary.org>
2014-09-11 19:33:46 +02:00
John Spray
dcc608d5d3 Merge pull request #2463 from ceph/wip-mds-beacon
mds: a couple fixes for the beacons

Reviewed-by: John Spray <john.spray@redhat.com>
2014-09-11 16:45:21 +01:00
Sage Weil
7281638d4a mds: sleep in progress thread if laggy and waiting_for_nolaggy waiters
If we have nolaggy waiters but are laggy we want to sleep.  Otherwise,
we will just spin and spam the log ...

Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-11 08:35:49 -07:00
Sage Weil
6fb5769aee mds/Beacon: do not reconnect to mon in quick succession
Wait at least one beacon interval between mon session resets.

Fixes: #9428
Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-11 08:35:49 -07:00
Yan, Zheng
c930624163 Merge pull request #2460 from ceph/wip-client-ll-ref
client: include ll_ref when printing inode
2014-09-11 17:06:39 +08:00
Yan, Zheng
4ad5db0050 client: include ll_ref when printing inode
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2014-09-11 17:03:55 +08:00
Sage Weil
2235aa990a Merge pull request #2444 from wonzhq/read-recency
osd: set min_read_recency_for_promote to default 1 when doing upgrade

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-10 20:44:13 -07:00
Sage Weil
59f1a49b3e Merge pull request #2449 from majianpeng/fix3
fix two bugs about perfcounter

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-10 20:37:03 -07:00
David Zafman
cf70b906ae test: Fix ceph_test_rados_watch_notify to delete the pools it creates
Fixes: #7934

Signed-off-by: David Zafman <dzafman@redhat.com>
2014-09-10 19:19:08 -07:00
Ma Jianpeng
2e4e98bd08 ReplicatedPG: Make perfcounter record the read-size for
async-read.

Signed-off-by: Ma Jianpeng <jianpeng.ma@intel.com>
2014-09-11 08:32:06 +08:00
Ma Jianpeng
cf34e00d49 ReplicatedPG: record correctly subop for perfcounter.
In log_subop_stats, it omit to record the counter of subop.

Signed-off-by: Ma Jianpeng <jianpeng.ma@intel.com>
2014-09-11 08:09:47 +08:00
Sage Weil
e50c426bef Merge pull request #2454 from athanatos/wip-9269
FileStore: report l_os_j_lat as commit latency

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-10 12:15:19 -07:00
Sage Weil
6846811ed3 Merge pull request #2453 from athanatos/wip-9220
Objecter::_recalc_linger_op: resend for any acting set change

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-10 12:09:34 -07:00
Samuel Just
dc5e98d3e4 Merge pull request #2443 from ceph/wip-9241
osdc/Objecter: drop bad session nref assert

Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-09-10 12:09:04 -07:00
Samuel Just
d0feeaa150 Merge pull request #2293 from ceph/wip-hitset-bytes
osd: improve agent calculation by factoring out hit_set bytes used properly

Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-09-10 12:02:56 -07:00
Loic Dachary
117de007ef erasure-code: mon, osd etc. depend on the plugins
Since the erasure code plugin version check has been introduced,
whenever a library/binary that can load plugin needs to be recompiled,
the erasure code plugins must also be considered. If the reason for
recompiling the library/binary is a new commit, the plugins will fail to
load.

The dependency is not based on source compilation and a shared library
dependency on liberasure-code.la is added instead. This library is
uniformly used whenever a plugin is to be loaded and therefore covers
all library/binaries that need it.

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-10 20:49:00 +02:00
Sage Weil
c6678eb57a Merge pull request #2451 from ceph/wip-osdc-leak
osdc/Objecter: fix leak of MStatfsReply

Reviewed-by: John Spray <john.spray@redhat.com>
2014-09-10 11:31:27 -07:00
Yehuda Sadeh
bead44cd98 Merge pull request #2447 from reclosedev/s3_colon_in_access_key
[rgw][s3] Allow colon ':' in access key

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2014-09-10 09:59:53 -07:00
Roman Haritonov
5a05e6b8b9 [rgw][s3] Allow colon ':' in access key
When access key contains ':', e.g. `some_info:for_user',
authorization header looks like:

"AWS some_info:for_user:request_signature"

so `auth_str.find(':')` result in auth_id = "some_info",
auth_sign = "for_user:request_signature".

auth_str.rfind(':') solves this issue.

Signed-off-by: Roman Haritonov <reclosedev@gmail.com>
2014-09-10 20:45:52 +04:00
Sage Weil
46bbe30e68 osdc/Objecter: fix leak of MStatfsReply
Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-10 06:57:12 -07:00
John Spray
136c5e1104 Merge pull request #2448 from ceph/wip-replay-locking
mds: fix replay locking

Reviewed-by: John Spray <john.spray@redhat.com>
2014-09-10 14:56:31 +01:00
Andreas-Joachim Peters
1ff94ccf89 EC-ISA: avoid usage of table cache lock outside the class implementation by introducing the setEncodingTable/setEncodingCoefficient methods 2014-09-10 11:25:05 +02:00
Andreas-Joachim Peters
5b41dacfd9 EC-ISA: add intelligent table cache 2014-09-10 11:25:05 +02:00
Yan, Zheng
83bd3430e3 mds: fix replay locking
When replaying EImportFinish/EFragment event, the replay thread may call
MDS::queue_waiters. MDS::queue_waiters() requires its caller to hold the
mds_lock. Otherwise assert(waiter_mutex == __null || waiter_mutex->is_locked())
in Cond::Signal() will be tiggered.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2014-09-10 16:48:47 +08:00
Zhiqiang Wang
b40cce7ad0 osd: set min_read_recency_for_promote to default 1 when doing upgrade
When upgrading from a build without the promotion on 2nd read feature,
should set min_read_recency_for_promote to the default value 1, instead
of 0.

Signed-off-by: Zhiqiang Wang <wonzhq@hotmail.com>
2014-09-10 11:58:32 +08:00
Xiaoxi Chen
d734600f92 Change CrushWrapper::crush to private
Currently in CrushWrapper, the member "struct crush_map *crush"  is a public member,
so people can break the encapsulation and manipulate directly to the crush structure.

This is not a good practice for encapsulation and will lead to inconsistent if code
mix use the CrushWrapper API and crush C API.A simple example could be:
1.some code use crush_add_rule(C-API) to add a rule, which will not set the have_rmap flag to false in CrushWrapper
2.another code using CrushWrapper trying to look up the newly added rule by name will get a -ENOENT.

This patch move CrushWrapper::crush to private, together with three reverse map(type_rmap, name_rmap, rule_name_rmap)
and also change codes accessing the CrushWrapper::crush to make it compile.

Signed-off-by: Xiaoxi Chen <xiaoxi.chen@intel.com>
2014-09-10 09:08:22 +08:00
Sage Weil
5a784cd3eb osdc/Objecter: drop bad session nref assert
This is a bad assert.  Specifically, handle_osd_op_reply may still be
holding the session ref while it is calling the completion for a previous
request.  This is safe: it is only holding the session ref after it dropped
the global map rwlock because of the per-session completion locks.  The
request in question was already marked completed by the time our thread
took the session lock.

Fixes: #9241
Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-09 17:28:54 -07:00
Josh Durgin
e11f0617b1 Merge pull request #2433 from ceph/wip-rbd-force-write-back
rbd should use write-back when caching is enabled

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-09-09 16:40:07 -07:00
Sage Weil
3c6e8884df osd/ClassHandler: fix build
Broken by 70ce400a8b.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-09 14:45:28 -07:00
Samuel Just
d165238b4e FileStore: report l_os_j_lat as commit latency
l_os_commit_lat is actually the commit cycle latency.

Fixes: #9269
Backport: firefly
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-09-09 14:07:17 -07:00
Samuel Just
1bce730be2 Merge pull request #2441 from ceph/wip-9365
osd/ClassHandler: improve error logging

Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-09-09 13:53:11 -07:00
Sage Weil
70ce400a8b osd/ClassHandler: improve error logging
Fixes: #9365
Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-09 13:38:49 -07:00