Commit Graph

41919 Commits

Author SHA1 Message Date
Samuel Just
4fe7d2abdf RadosModel: randomly prefix delete with assert_exists
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-05-21 12:14:02 -07:00
Samuel Just
121aa3bc61 RadosModel: assert exists on subsequent writes
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-05-21 12:14:02 -07:00
Ken Dreyer
b50cc9472f doc: update OSD port range to 6800-7300
The upper limit for OSD/MDS ports changed from 7100 to 7300 in commit
f9ec5a7945. Update the Quick Start
Preflight documentation to reflect this change.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-05-21 13:00:32 -06:00
Yehuda Sadeh
98cdf03363 Merge pull request #4391 from nilamdyuti/wip-doc-ceph-object-gateway
doc: Removes references to s3gw.fcgi in simple gateway configuration file...

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2015-05-21 13:00:20 -04:00
Casey Bodley
3dda5faf75 xio: malloc if xio_mempool_alloc fails
Signed-off-by: Casey Bodley <casey@cohortfs.com>
2015-05-21 07:04:36 -07:00
Casey Bodley
5c14a69395 xio: fix for xio_msg release after teardown
The xio_msg pointers to be freed in XioPortal::release_xio_rsp() are no
longer valid after a call to xio_connection_destroy(). We were already
avoiding the call to xio_release_msg() in this case, but were still
dereferencing the xio_msg for its user_context pointer. Moved the check
for is_connected() outside of the loop to avoid any access to msg.

Suggested-by: Vu Pham <vuhuong@mellanox.com>
Signed-off-by: Casey Bodley <casey@cohortfs.com>
2015-05-21 07:04:26 -07:00
Casey Bodley
16d1c1e97d xio: use ceph clock for timestamps
accelio is using rdtsc to generate xio_msg.timestamp, which can't be
reliably converted to a timeval. now uses ceph_clock_now() to assign
the Message::recv_stamp and recv_complete_stamp

Signed-off-by: Casey Bodley <casey@cohortfs.com>
2015-05-21 07:00:12 -07:00
Vu Pham
c2bba8ebee xio: save nonce for bind address
A missing nonce in the osd addrs was preventing the monitor from
detecting osd restarts. XioMessenger::bind() now sets the nonce in the
same way that SimpleMessenger and AsyncMessenger do

Signed-off-by: Casey Bodley <casey@cohortfs.com>
Signed-off-by: Vu Pham <vu@mellanox.com>
2015-05-21 06:59:59 -07:00
Casey Bodley
355aa0e44b xio: check if connection is on list before erasing
also removed the extra conditional put() in on_disconnect_event()

Signed-off-by: Casey Bodley <casey@cohortfs.com>
2015-05-21 06:59:46 -07:00
Vu Pham
bb621b074d xio: better way to assign connections to specific lane
Better way to assign connections to a specific lane of a portal
Avoiding lane competition/hogging.
This change resolves the slow ramping up and spiky behaviors during
clients starting/running I/Os.

Signed-off-by: Vu Pham <vu@mellanox.com>
2015-05-21 06:59:36 -07:00
Zhiqiang Wang
855a70d83e test/aio: aio completion is not released
Signed-off-by: Zhiqiang Wang <zhiqiang.wang@intel.com>
2015-05-21 14:58:20 +08:00
Dan Mick
783fdc7c3e Merge pull request #4517 from ceph/wip-11388-debian-argparse
#11388 debian: move ceph_argparse into ceph-common

Reviewed-by: Dan Mick <dmick@redhat.com>
2015-05-20 14:54:16 -07:00
Ilya Dryomov
8190f44f07 Merge pull request #4721 from ceph/wip-fix-concurrent.sh
Fix ceph.conf path in concurrent.sh - krbd qa suite

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2015-05-20 20:54:55 +03:00
Ken Dreyer
110608e5bd debian: move ceph_argparse into ceph-common
Prior to this commit, if a user installed the "ceph-common" Debian
package without installing "ceph", then /usr/bin/ceph would crash
because it was missing the ceph_argparse library.

Ship the ceph_argparse library in "ceph-common" instead of "ceph". (This
was the intention of the original commit that moved argparse to "ceph",
2a23eac54957e596d99985bb9e187a668251a9ec)

http://tracker.ceph.com/issues/11388 Refs: #11388

Reported-by: Jens Rosenboom <j.rosenboom@x-ion.de>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-05-20 11:29:04 -06:00
Kefu Chai
8c65e2af29 Merge pull request #4720 from athanatos/wip-clarify-DBObjectMap-sync
DBObjectMap::sync: add comment clarifying locking

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-05-20 21:28:28 +08:00
Kefu Chai
4e272e5eb1 Merge pull request #3946 from tchaikov/randomize-scrub-time
osd: Randomize scrub time

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
2015-05-20 21:21:13 +08:00
Piotr Dałek
ca6abca63d tools: add --no-verify option to rados bench
When doing seq and rand read benchmarks using rados bench, a quite large
portion of cpu time is consumed by doing object verification. This patch
adds an option to disable this verification when it's not needed, in turn
giving better cluster utilization. rados -p storage bench 600 rand scores
without --no-verification:

Total time run:       600.228901
Total reads made:     144982
Read size:            4194304
Bandwidth (MB/sec):   966
Average IOPS:         241
Stddev IOPS:          38
Max IOPS:             909522486
Min IOPS:             0
Average Latency:      0.0662
Max latency:          1.51
Min latency:          0.004

real    10m1.173s
user    5m41.162s
sys     11m42.961s

Same command, but with --no-verify:

Total time run:       600.161379
Total reads made:     174142
Read size:            4194304
Bandwidth (MB/sec):   1.16e+03
Average IOPS:         290
Stddev IOPS:          20
Max IOPS:             909522486
Min IOPS:             0
Average Latency:      0.0551
Max latency:          1.12
Min latency:          0.00343

real    10m1.172s
user    4m13.792s
sys     13m38.556s

Note the decreased latencies, increased bandwidth and more reads performed.

Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
2015-05-20 12:41:22 +02:00
Kefu Chai
6344fc8393 osd: use another name for randomize scrub option
s/osd_scrub_interval_limit/osd_scrub_interval_randomize_ratio/

Fixes: #10973
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-05-20 18:23:21 +08:00
Kefu Chai
5e44040e85 osd: randomize scrub times to avoid scrub wave
- to avoid the scrub wave when the osd_scrub_max_interval reaches in a
  high-load OSD, the scrub time is randomized.
- extract scrub_load_below_threshold() out of scrub_should_schedule()
- schedule an automatic scrub job at a time which is uniformly distributed
  over [now+osd_scrub_min_interval,
        now+osd_scrub_min_interval*(1+osd_scrub_time_limit]. before
  this change this sort of scrubs will be performed once the hard interval
  is end or system load is below the threshold, but with this change, the
  jobs will be performed as long as the load is low or the interval of
  the scheduled scrubs is longer than conf.osd_scrub_max_interval. all
  automatic jobs should be performed in the configured time period, otherwise
  they are postponed.
- the requested scrub job will be scheduled right away, before this change
  it is queued with the timestamp of `now` and postponed after
  osd_scrub_min_interval.

Fixes: #10973
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-05-20 18:23:21 +08:00
Kefu Chai
0f7f35670f osd: use __func__ in log messages
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-05-20 18:23:21 +08:00
Kefu Chai
2ab0e606df osd: simplify OSD::scrub_load_below_threshold() a little bit
avoid unnecessary comparison

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-05-20 18:23:21 +08:00
Haomai Wang
8ec7303b95 Merge pull request #4691 from varadakari/wip-kvs-objheader
KeyValueStore: optimize the object header writes

Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
2015-05-20 16:29:21 +08:00
Vasu Kulkarni
f9e5b68b23 qa: unbreak concurrent.sh workunit
Signed-off-by: Vasu Kulkarni <vasu@redhat.com>
2015-05-19 15:55:05 -04:00
Samuel Just
c2d17b927f test/librados/snapshots.cc: add test for 11677
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-05-19 11:02:40 -07:00
Yan, Zheng
e585ddf43f Merge pull request #4658 from ceph/wip-11481
#11481: MDS resilience to weird mdsmaps
2015-05-19 16:03:52 +08:00
Josh Durgin
1b758c9945 Merge pull request #4722 from ceph/wip-rbd-xfstests-20150518
rbd: expunge xfstests generic/078

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-05-18 23:13:35 -07:00
Douglas Fuller
bf40b9b553 rbd: expunged xfstests generic/078
This tests RENAME_WHITEOUT, which was enabled for xfs in kernel commit
7dcf5c3e4527cfa2807567b00387cf2ed5e07f00. At first execution, it throws a BUG.
Subsequent executions appear to work correctly. This issue manifests for disks
and RBD instances.

Signed-off-by: Douglas Fuller <dfuller@redhat.com>
2015-05-18 17:37:00 -07:00
Loic Dachary
055c0c480e Merge pull request #4716 from ceph/wip-11673-debian-dbg-depends
debian: set rest-bench-dbg ceph-test-dbg dependencies

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-05-18 23:02:39 +02:00
David Zafman
87433dabdd Merge pull request #4705 from stiopaa1/exit
cryptic error message in ceph interactive mode

Reviewed-by: David Zafman <dzafman@redhat.com>
2015-05-18 13:27:14 -07:00
Samuel Just
2eca53682f DBObjectMap::sync: add comment clarifying locking
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-05-18 12:29:05 -07:00
Samuel Just
4b2e018d18 Merge pull request #4659 from ceph/wip-11602
mon: prevent deletion of bucket in use by rule; prevent subsequent crush crash

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-05-18 11:05:16 -07:00
Ken Dreyer
f898ec1e4e debian: set rest-bench-dbg ceph-test-dbg dependencies
Debian's debug packages ought to depend on their respective binary
packages. This was the case for many of our ceph packages, but it was
not the case for ceph-test-dbg or rest-bench-dbg.

Add the dependencies on the relevant binary packages, pinned to
"= ${binary:Version}" per convention.

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

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-05-18 11:03:38 -06:00
Yan, Zheng
765ddaeaa0 Merge pull request #4715 from ceph/wip-11641
mds: fix handling missing mydir dirfrag
2015-05-19 00:28:01 +08:00
John Spray
9ed491989a mds: fix handling missing mydir dirfrag
This was broken by 96992466 aka "mds: handle missing mydir dirfrag"

The previous code was mistakenly treating a not-yet-loaded
dirfrag as a non-existent dirfrag, resulting in
inconsistent fragstats even when no objects had
actually been lost.

Fixes: #11641
Signed-off-by: John Spray <john.spray@redhat.com>
2015-05-18 16:15:07 +01:00
Haomai Wang
2863163cd5 Merge pull request #4693 from varadakari/wip-kvdb-prefix
KeyValueStore: Fix the prefix comparion to avoid object leaks.

Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
2015-05-18 21:58:10 +08:00
Haomai Wang
0a087c1dae Merge pull request #4692 from varadakari/wip-kvs-iterator
wip-kvs-iterator

Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
2015-05-18 21:56:11 +08:00
Kefu Chai
c1f4b7a257 Merge pull request #4703 from dachary/wip-make-check-verbose
tests: reduce make check verbosity

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-05-18 10:14:29 +08:00
Loic Dachary
e4ca4685e0 tests: reduce make check verbosity
Move check-local scripts

   src/test/run-cli-tests
   encode-decode-non-regression.sh
   test/encoding/readable.sh

to check_SCRIPTS. Their output is captured in .log file when running
with a recent automake. This reduces the output of make check by an
order of magnitude.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-18 00:41:16 +02:00
Loic Dachary
a0eac3e48c Merge pull request #4711 from dachary/wip-ceph-detect-init
ceph-detect-init typo

Reviewed-by: Michal Jarzabek <stiopa@gmail.com>
2015-05-17 22:55:31 +02:00
Loic Dachary
64f584a8e7 ceph-detect-init: fix pep8 extra space
Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-17 21:30:54 +02:00
Loic Dachary
855aeee697 ceph-detect-init: run-tox.sh always succeeds
Because of the | grep, the status of tox is no longer the status of
run-tox.sh and errors are not reported as they should.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-17 21:29:25 +02:00
Haomai Wang
38e60deb5a Perf: used to perf local hardware capacity
This program contains a collection of low-level performance measurements
for Ceph, which can be run either individually or altogether.  These
tests measure performance in a single stand-alone process, not in a cluster
with multiple servers.  Invoke the program like this:

    Perf test1 test2 ...

test1 and test2 are the names of individual performance measurements to
run.  If no test names are provided then all of the performance tests
are run.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
2015-05-18 00:59:11 +08:00
Loic Dachary
d723de62f8 erasure-code: update ceph-erasure-code-corpus for shec
Update the ceph-erasure-code-corpus submodule to include the hammer shec
checks.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-17 17:00:50 +02:00
Kefu Chai
8e7dfcd29b Merge pull request #4704 from dachary/wip-ceph-helpers
{mon,osd}-test-helpers.sh are deprecated

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-05-17 22:25:39 +08:00
Michal Jarzabek
3cf3ac39f1 cryptic error message in ceph interactive mode
Fixes: #11459
Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
2015-05-17 15:22:44 +01:00
Loic Dachary
7e5336bfa5 Merge pull request #4706 from stiopaa1/cephdetectinit
ceph_detect_init: added linux mint

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-05-17 15:57:42 +02:00
Michal Jarzabek
d688b0c39d ceph_detect_init: added linux mint
Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
2015-05-17 12:50:57 +01:00
Loic Dachary
e5564a87eb tests: {mon,osd}-test-helpers.sh are deprecated
Remove the helpers because they are not used any longer. They have been
deprecated by ceph-helpers.sh

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-17 13:31:25 +02:00
Loic Dachary
ae2d489bac tests: ceph-helpers.sh remove redundant setup in main
And add setup/teardown in tests that do not have it.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-17 13:31:25 +02:00
Loic Dachary
e9859838ea tests: test/mon/mon-handle-forward.sh uses ceph-helpers.sh
Use ceph-helpers.sh instead of  mon/mon-test-helpers.sh.

  * modifying the .asok and .log names to match the ceph-helpers.sh
    conventions

  * use explicit ports 7300 and 7301 instead of +1 so that grep
    will show that 7301 is used. This reduces the odds of a
    port collision when looking for a port that's not already
    used by an existing test.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-17 13:31:25 +02:00