Commit Graph

774 Commits

Author SHA1 Message Date
Loic Dachary
800b9314ad Merge pull request #2669 from ceph/wip-9692
qa/workunits/fs/misc: fix syntax error

Reviewed-by: Loic Dachary <loic-201408@dachary.org>
2014-10-10 07:54:22 +02:00
Yan, Zheng
fa539b9c3f qa/workunits/fs/misc: fix syntax error
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2014-10-10 09:30:29 +08:00
Loic Dachary
9b3d345d50 qa: move mon_mds tests last
Assuming they are more likely than others to leave OSD/MON in an
unstable state that could have undefined side effects on the tests
following it. A cleaner solution would be to run them in a separate
script that is run on an independent cluster.

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-10-08 16:33:22 +02:00
John Spray
e27cf4139f qa: cephtool tests for tell mds.X
Signed-off-by: John Spray <john.spray@redhat.com>
2014-10-08 12:01:21 +01:00
John Spray
620a722da3 qa: fixup cephtool test when MDS exists
We added MDS resetting code here a while back,
but the order of operations was such that a
"cluster up" was being run between a fail_all_mds
and the point at which we needed the map not to
be interfered with (testing setmap).

Also the new fs create/destroy cycles for testing
EC pool handling were missing calls to stop the
daemons before fs rm.

Signed-off-by: John Spray <john.spray@redhat.com>
2014-10-08 11:58:20 +01:00
Sage Weil
1036e9827c Merge remote-tracking branch 'gh/giant'
Conflicts:
	src/osdc/Objecter.cc
2014-10-07 12:40:45 -07:00
Sage Weil
2ac2a96898 Merge pull request #2560 from ceph/wip-9418
mon: add new profiles & audit cap checks

Reviewed-by: Sage Weil <sage@redhat.com>
2014-10-07 06:32:53 -07:00
Loic Dachary
f1becf9ad7 qa: ceph tell must retry on ENXIO
It is expected for ceph tell to fail with ENXIO if the daemon it is
trying to join is not ready for some reason. This should be handled as a
transient error instead of a fatal error.

Add two shell functions to help with retry. They may prove useful if
other cases requiring a few retries show up.

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-10-04 11:34:27 +02:00
Joao Eduardo Luis
f0653c0401 qa/workunits: mon: auth_caps: account for mon blank caps
test creating and entity with blank caps with and without '--force'
being specified.  without '--force' they must fail with EINVAL as the
monitor will not be able to parse them.

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2014-10-03 16:24:20 +01:00
Joao Eduardo Luis
c7d5c25324 qa/workunits: mon: auth_caps: variables must be local
We have variables with the same name that are being shared!  We don't
hit any issues with it currently because the code just kind of works
even though that happens.  Add a bit of new logic that relies on an
immutable return code (for instance) and we're in the woods.

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2014-10-03 16:24:19 +01:00
Joao Eduardo Luis
7e85bebd74 qa/workunits: mon: auth_caps: cleanup on successful exit
Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2014-10-03 16:24:19 +01:00
Joao Eduardo Luis
ea96863d2a qa/workunits: cephtool: test auth profiles
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2014-10-03 16:24:19 +01:00
Loic Dachary
29356d8765 qa: fix osd pool ls invalid test
expect_false does not extend past the pipe and fails because the command
succeeds

introduced in f05c977bbcd310a83e6df03344a72d4cc06e1cc3

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-10-01 23:41:09 +02:00
João Eduardo Luís
46166eefe6 Merge pull request #2452 from ceph/wip-pool-ls
mon: add 'osd pool ls [detail]' command

Reviewed-by: Joao Eduardo Luis <joao@redhat.com>
2014-10-01 16:22:42 +00:00
Sage Weil
f36e8540d0 Merge remote-tracking branch 'gh/giant'
Conflicts:
	qa/workunits/cephtool/test.sh
	src/test/erasure-code/TestErasureCodeIsa.cc
2014-09-29 16:17:15 -07:00
Loic Dachary
beade63a17 qa/workunits/cephtool/test.sh: fix thrash (ultimate)
Keep the osd trash test to ensure it is a valid command but make it a
noop by giving it a zero argument (meaning thrash 0 OSD maps).

Remove the loops that were added after the command in an attempt to wait
for the cluster to recover and not pollute the rest of the tests. Actual
testing of osd thrash would require a dedicated cluster because it the
side effects are random and it is unnecessarily difficult to ensure they
are finished.

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-29 13:47:06 +02:00
John Spray
b8e6a6b180 Merge remote-tracking branch 'origin/giant' 2014-09-24 11:40:52 +01:00
Loic Dachary
13780d7551 mon: osd find / metadata --format plain fallback
ceph --format plain osd find 1 (and metadata) are not implemented and
must fallback to the default (json-pretty).

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-19 15:31:33 +02:00
Loic Dachary
7ac60d8caf tests: check osd health in cephtool/test.sh
Add a trivial osd health test at the beginning of each group of
tests. When facing an intermittent failure, it is difficult to diagnose
if the cluster appears to be missing an OSD but there is no indication
as to when the OSDs were last up.

The tests are now only run after all OSDs are up.

These checks can be disabled with --no-sanity-check to allow running
some tests that have less requirements than running all the tests.

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-19 13:23:44 +02:00
Loic Dachary
4d75c4c36d tests: qa/workunits/cephtool/test.sh ! and -e
From the bash man page:

   set -e exit immediately ... The shell does not exit ... if the
   command's return value is being inverted with !

Add an explicit exit 1 where appropriate.

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-19 13:09:18 +02:00
Yan, Zheng
59c89760c7 qa/workunits/fs/misc: Add a workunit for ACL
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2014-09-18 14:20:59 +08:00
John Spray
681a49c412 mon: forbid tier changes when in use by FS
* Removing tiers from a base pool in use by CephFS is forbidden.
* Using CephFS pools as tiers is forbidden.

Signed-off-by: John Spray <john.spray@redhat.com>
2014-09-16 17:16:23 -07:00
John Spray
80441cda8c mon: prevent cache pools being used CephFS
Fixes two things:
 * EC pools are now permissible if they have a cache overlay
 * Pools are not permissible if they are a cache tier.

Fixes: #9435

Signed-off-by: John Spray <john.spray@redhat.com>
2014-09-16 17:16:23 -07:00
Sage Weil
f05c977bbc mon: add 'osd pool ls [detail]' command
This is much friendlier than

 ceph osd dump | grep ^pool

Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-10 08:07:53 -07:00
Loic Dachary
df3c70a954 qa: scripts to help test ceph-qa-suite
This workunit will be used by tests as a placeholder that always return
true. This is helpful in tests when a script from the qa/workunits
directory is mandatory but we do not care about testing anything.  For
an example of how it can be used, check
https://github.com/ceph/ceph-qa-suite/pull/120

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-05 17:49:40 +02:00
Loic Dachary
e13ddc7dae tests: qa/workunits/cephtool/test.sh early fail
Add tests to fail as soon as an unexpected condition is met in
test_mon_osd. Otherwise the actual error will be more difficult find in
the logs.

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-08-31 22:59:04 +02:00
John Spray
9fc26840cf tools: use cout instead of cerr in journal tool
Aside from being a bit odd to begin with, using stderr
was causing tests to fail because the output was polluted
by log output which is also on stderr.

Fixes: 9281

Signed-off-by: John Spray <john.spray@redhat.com>
2014-08-29 18:34:39 +01:00
John Spray
e0b19e3023 qa: fix+cleanup hadoop wordcount test
The glob for the examples jar was wrong.

Fixes: #9260

Signed-off-by: John Spray <john.spray@redhat.com>
2014-08-29 13:29:22 +01:00
Sage Weil
16d946bfc7 qa/workunits/hadoop/wordcount: remove bogus rm -r
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-25 11:03:39 -07:00
Gregory Farnum
d9cf299134 Merge pull request #2279 from ceph/wip-hadoop
fix and reorg hadoop workunits

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-08-19 11:47:07 -07:00
Sage Weil
977f85279f qa/workunits/cephtool/test.sh: test reweight-by-pg
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-19 08:16:41 -07:00
Sage Weil
1dc1fb8a60 qa/workunits/hadoop: move all hadoop tests into a hadoop/ dir
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-18 08:39:14 -07:00
Sage Weil
3d3fcc98be qa/workunits/hadoop-wordcount: fix/use -rmr command
-rm -r -f ... doesn't seem to work; use -rmr instead.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-18 08:38:10 -07:00
Sage Weil
adaf5a6a88 qa/workunits/hadoop-wordcount: use -x
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-18 08:37:38 -07:00
Sage Weil
055be68cf8 qa/workunits/rbd/qemu-iotests: touch common.env
This seems to be necessary on trusty.

Backport: firefly, dumpling
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-17 20:54:28 -07:00
Sage Weil
5045c5cb4c qa/workunits/rest/test.py: use rbd instead of data pool for size tests
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-16 22:07:56 -07:00
Sage Weil
3279f3e737 qa/workunits/rest/test.py: do snap test on our data2/3 pool
This way it works when a 'data' pool doesn't already exist.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-16 22:07:56 -07:00
Sage Weil
6d7a229c14 qa/workunits/rest/test.py: fix rd_kb -> rd_bytes
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-16 22:07:56 -07:00
Sage Weil
34fe7a8214 Merge pull request #2217 from ceph/wip-problem-osds
mon: 'ceph osd blocked-by' for histogram of peers OSDs are waiting for

Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-08-16 13:15:10 -07:00
Sage Weil
14614e013f qa/workunits/rest/test.py: fix 'df' test to use total_used_bytes
This changed back in ee2dbdb0f5e54fe6f9c5999c032063b084424c4c

Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-16 13:06:02 -07:00
Sage Weil
cec40dae17 qa/workunits/cephtool: verify setmaxosd doesn't let you clobber osds
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-14 13:18:07 -07:00
Sage Weil
bee79ec480 qa/workunits/cephtool: add trivial 'ceph osd blocked-by' test
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-08 18:12:31 -07:00
Sage Weil
6380f47868 qa/workunits/cephtool: add simple 'ceph osd perf' test
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-08 18:12:31 -07:00
Sage Weil
e3819b6216 qa/workunits/rados/test_rados_tool: add a few xattr tests
Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-06 17:06:26 -07:00
Sage Weil
ea731ae142 qa/workunits/cephtool/test.sh: fix 'ceph df ...' tests
Broken by ee2dbdb0f5e54fe6f9c5999c032063b084424c4c and friends.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-08-06 13:16:49 -07:00
Loic Dachary
8363a94a60 erasure-code: HTML display of benchmark results
The ceph_erasure_code_benchmark output is converted into a JSON series
suitable to display in HTML with the http://www.flotcharts.org/
library. A self contained copy of the HTML,JS,CSS files is included for
durability and can be used from the source tree with:

    CEPH_ERASURE_CODE_BENCHMARK=src/ceph_erasure_code_benchmark  \
    PLUGIN_DIRECTORY=src/.libs \
        qa/workunits/erasure-code/bench.sh fplot jerasure |
        tee qa/workunits/erasure-code/bench.js

and display with:

    firefox qa/workunits/erasure-code/bench.html

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-08-04 11:42:05 +02:00
Loic Dachary
e11c3fcc3b erasure-code: rework benchmark suite
Expand the default suite to enumerate all cases that are relevant to the
current code base so that it is easier to consume. Namely it means

 * iterating over object sizes of 4KB (what is used by default) and
   1MB (what was previous benchmarked)
 * grouping results in series that would make sense to plot to get the
   behavior of a given technique for a series of K/M values and all
   possible erasures.

Instead of specifying the iterations to run, set the size of the total
data set to be exercised and compute the iterations by dividing it by
the object size. Since the object size varies, it is impractical to
preset the number of iterations and get meaningful results.

The PARAMETERS environment variable is added to enable the caller to
inject --parameter jerasure-variant=generic, for instance.

The packets size is calculated based on the other parameters. The
options are limited when packets are small (4KB) and it would not make a
real difference to give control over it. The packet size is capped to
a maximum of 3100 bytes which is roughly what has been found to be an
optimal value for large packets (1MB).

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-08-04 11:42:01 +02:00
Dan Mick
aa9ae1f270 qa/workunits/cephtool/test_daemon.sh: verify ceph -c works with daemon
Signed-off-by: Dan Mick <dan.mick@inktank.com>
2014-07-30 14:52:48 -07:00
Dan Mick
22d20f39b7 qa/workunits/cephtool/test_daemon.sh: typo
Signed-off-by: Dan Mick <dan.mick@inktank.com>
2014-07-30 14:52:48 -07:00
Dan Mick
97a8d5a9fd qa/workunits/cephtool/test_daemon.sh: allow local ceph command 2014-07-30 14:52:44 -07:00