Commit Graph

857 Commits

Author SHA1 Message Date
Josh Durgin
0d468ae352 Merge pull request #3831 from dachary/wip-qemu-iotests
Maipo should also use the local qemu clone

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-03-02 15:34:39 -08:00
Jason Dillaman
6cff494e18 qa/workunits/rbd/copy.sh: remove all image locks
If the exclusive lock feature is enabled, all locks need
to be removed prior removing the image.

Fixes: #10990
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-02 16:24:17 -05:00
Sage Weil
b65f8fa422 Merge remote-tracking branch 'gh/hammer' 2015-03-02 09:11:11 -08:00
Yan, Zheng
4ececa3dc4 qa/workunits/fs/misc: fix filelock_interrupt.py
Handle the case that kernel does not support fcntl.F_OFD_SETLK.
Also fix the code that checks if fnctl fails with errno == EINTR.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-03-02 21:08:03 +08:00
Loic Dachary
a23b348979 Maipo should also use the local qemu clone
http://tracker.ceph.com/issues/10975 Fixes: #10975

Signed-off-by: Loic Dachary <loic@dachary.org>
2015-02-28 01:20:05 +01:00
Jason Dillaman
3ec52dae63 qa/workunits/rbd/copy.sh: explicitly choose the image format
The rbd CLI now utilizes the rbd_default_format configuration
setting, therefore the copy test now needs to tell rbd which image
format it is expecting to create.

Fixes: #10961
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-02-26 12:06:53 -05:00
Noah Watkins
b3329a961b hadoop: workunits don't need java path
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-02-24 18:26:44 -08:00
Noah Watkins
15da810086 qa: update old replication tests
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-02-23 20:00:24 -08:00
Noah Watkins
6bc2b024fd hadoop: add terasort workunit
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-02-23 20:00:24 -08:00
Loic Dachary
c7f3691384 Merge pull request #3698 from dachary/wip-10836-erasure-code-corpus
tests: clone ceph-erasure-code-corpus from ceph

Reviewed-by: Takeshi Miyamae <miyamae.takeshi@jp.fujitsu.com>
2015-02-12 13:40:56 +01:00
Gregory Farnum
bac1846828 Merge pull request #3711 from ceph/hadoop
qa: hadoop plays nice with new teuthology task
2015-02-11 21:04:03 -08:00
Sage Weil
ee3e466fc4 Merge pull request #3522 from ceph/wip-8600
mon: OSDMonitor: tolerate catastrophically bad crush maps

Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-11 18:31:42 -08:00
Noah Watkins
de6b53aba7 qa: hadoop plays nice with new teuthology task
This brings the hadoop wordcount up-to-date with the new teuthology
hadoop task.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-02-11 16:03:32 -08:00
Sage Weil
aa03d6a84c Merge remote-tracking branch 'gh/master' into hammer 2015-02-11 09:21:36 -08:00
Loic Dachary
94f9f60b1b tests: clone ceph-erasure-code-corpus from ceph
Instead of the http://github.com/dachary namespace. It is not an issue
in the common case because it should be cloned because it is in the
.gitmodules file with the proper namespace.

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

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-02-11 13:34:15 +01:00
Sage Weil
a6035aee32 Merge branch 'wip-7701' of git://github.com/xinxinsh/ceph into hammer
Conflicts:
	src/osd/osd_types.h
2015-02-10 17:19:44 -08:00
Greg Farnum
a850514838 fsync-tester: print info about PATH and locations of lsof lookup
We're seeing the lsof invocation fail (as not found) in testing and nobody can
identify why. Since attempting to reproduce the issue has not worked, this
patch will gather data from a genuinely in-vitro location.

Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2015-02-09 22:30:24 -08:00
xinxin shu
a3b158311a add tests for ceph pg ls-by-pool
Signed-off-by: xinxin shu <xinxin.shu@intel.com>
2015-02-10 08:11:25 +08:00
xinxin shu
6ccced2415 add tests for ceph pg ls-by-osd
Signed-off-by: xinxin shu <xinxin.shu@intel.com>
2015-02-10 08:11:25 +08:00
xinxin shu
742c5e8b2d add tests for ceph pg ls-by-primary
Signed-off-by: xinxin shu <xinxin.shu@intel.com>
2015-02-10 08:11:25 +08:00
Mykola Golub
7920db3da9 tests: make ceph_watch_wait output watchfile content on failure
It should help in troubleshooting remote test failures.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-02-08 22:12:55 -08:00
Sage Weil
6d72a1f040 Merge pull request #3468 from ceph/wip-cephfs-snap1
Wip cephfs snap1

Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-06 03:02:50 -08:00
Yan, Zheng
8624172d1a qa/workunits/snaps: remove snapshots when test finishes
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
a464558ff7 qa/workunits/snaps: don't assume snapshot is disabled
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Kefu Chai
fffa5e201a osd,mon: add norebalance osdmap flag
Fixes: #10559

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-02-05 13:52:17 +08:00
Joao Eduardo Luis
0d80691979 qa: workunits: cephtool/test.sh: test 'ceph osd setcrushmap'
Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2015-02-04 14:05:14 +00:00
Sage Weil
c58307bbcf Merge pull request #3583 from jdurgin/wip-qemu-iotests
qa: use correct binary path on rpm-based systems

Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-02 07:54:53 -08:00
Josh Durgin
05ce2aa1bf qa: use correct binary path on rpm-based systems
Fixes: #10715
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2015-02-02 16:45:14 +01:00
Sage Weil
0af16c3672 Merge pull request #3485 from jdurgin/wip-merge-diff-testing
Improve merge-diff test
2015-02-02 03:07:36 -08:00
xinxin shu
2ac116e939 add tests for ceph pg ls
Signed-off-by: xinxin shu <xinxin.shu@intel.com>
2015-02-02 13:06:21 +08:00
Yehuda Sadeh
f147143115 Merge remote-tracking branch 'origin/master' into wip-rgw-versioning-4
Conflicts:
	src/rgw/rgw_admin.cc
2015-01-29 16:05:14 -08:00
Yehuda Sadeh
00f21d8bb6 workunits/rgw: adjust radosgw-admin output parsing
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2015-01-29 09:31:33 -08:00
Yehuda Sadeh
b685baad30 workunits/rgw: set radosgw-admin location through env variable
add new RGW_ADMIN to be able to set call.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2015-01-29 09:31:33 -08:00
Mykola Golub
e5ddc502d9 tests: bring back useful test 'ceph tell osd.foo'
The test was removed in 1189138 (mon: make ceph tell mon.* version
work) as it began to fail due to #10439. After it fixed in c4548f6
(pybind: ceph_argparse: validate incorrectly formed targets), the test
can be restored.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-27 10:51:07 +02:00
Josh Durgin
f6406c99d8 qa: small improvements to merge-diff test
* Use set -e to detect errors
* no need to retry cleanup in a loop now that rbd-fuse closes images
* use --no-progress for long-running operations
* add output at the start of each test

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2015-01-24 23:10:16 -08:00
Armando Segnini
33f0afdd15 doc: Some files still use http://ceph.newdream.net
This probably redirects to http://ceph.com but ceph.newdream.net still appears in some places

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

Related: #9922

Signed-off-by: Armando Segnini <armando.segnini@telecom-bretagne.eu>
2015-01-23 12:28:58 +01:00
Josh Durgin
448a3c3335 Merge remote-tracking branch 'origin/next' 2015-01-22 13:05:12 -08:00
Jason Dillaman
a6eadaefb7 rbd image_read.sh: disable exclusive locking
Until the kernel supports RBD exclusive locking, this test
has been updated to create shared images (exclusive locking
disabled).

Fixes: #10613
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-01-22 13:03:40 -08:00
Josh Durgin
07038a79f3 Merge branch 'next' 2015-01-21 16:11:43 -08:00
Sage Weil
6633f8a3ed Merge pull request #3409 from trociny/wip-osd_pool_flags
osd: new pool safeguard flags: nodelete, nopgchange, nosizechange

Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-21 13:52:29 -08:00
John Spray
a0af5de972 qa: move fs quota to its own dir
This is because running fs/misc on a kclient
should not include quota (quota not supported
on kernel client).

Fixes: #10579
Signed-off-by: John Spray <john.spray@redhat.com>
2015-01-21 14:36:58 +00:00
Josh Durgin
946958c13c qa: disable automatic locking for manual locking test
Automatic locking hides the ESHUTDOWN from the caller, which is how
this test detects that blacklisting works.

Fixes: #10592
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2015-01-20 15:56:12 -08:00
Sage Weil
8318a2e5e2 Merge pull request #3382 from xinxinsh/wip-fix
fix command 'ceph pg dump_stuck degraded'

Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-19 12:35:58 -08:00
Mykola Golub
8ab3c41db7 osd: new pool safeguard flags: nodelete, nopgchange, nosizechange
* nodelete - pool can't be deleted
* nopgchange - pool's pg and pgp num can't be changed
* nosizechange - pool's size and min size can't be changed

This is intended to help some poor admin to avoid a very bad day.

Fixes: #9792 (but in a different way than it was proposed there)
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-19 21:50:28 +02:00
Josh Durgin
a845139d1f Merge pull request #3292 from kylinstorage/rbd-merge-diff-v2
rbd: merge diff files

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-16 12:08:02 -08:00
xinxin shu
9db596974c fix command 'ceph pg dump_stuck degraded'
undersized not valid:  undersized not in inactive|unclean|stale
undersized not valid:  undersized doesn't represent an int
Invalid command:  unused arguments: ['undersized']
pg dump_stuck {inactive|unclean|stale [inactive|unclean|stale...]} {<int>} :  show information about stuck pgs

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
2015-01-16 01:33:07 +08:00
Josh Durgin
e7cc6117ad qa: ignore duplicates in rados ls
These can happen with split or with state changes due to reordering
results within the hash range requested. It's easy enough to filter
them out at this stage.

Backport: giant, firefly
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2015-01-14 15:02:38 -08:00
John Spray
e5591f8a98 qa: fail_all_mds between fs reset and fs rm
Because fs reset opens a brief window for the previously
failed MDSs to spring back into life.

Fixes: #10539

Signed-off-by: John Spray <john.spray@redhat.com>
2015-01-14 22:08:09 +00:00
Gregory Farnum
a6f5682d55 Merge pull request #3364 from ceph/wip-quota-test
qa: set -e explicitly in quota test

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-01-13 07:08:30 -08:00
John Spray
b578a53b03 qa: set -e explicitly in quota test
Previously was set in hashbang, which meant
that "./quota.sh" was OK, but "sh ./quota.sh" would
just run through ignoring errors.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-01-13 14:58:57 +00:00
John Spray
8630696681 qa: add fs reset to cephtool tests
This is just a superficial "I can call it" test,
it's actual behaviour is checked elsewhere.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-01-12 15:00:15 +00:00
Yunchuan Wen
d300220aaf rbd: test case for rbd merge-diff
Signed-off-by: Yunchuan Wen <yunchuanwen@ubuntukylin.com>
Signed-off-by: MingXin Liu <mingxinliu@ubuntukylin.com>
2015-01-12 01:05:19 +00:00
Loic Dachary
ebfe230680 Merge pull request #3272 from trociny/tell-mon-version
cli: make ceph tell mon.* version work

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-01-06 19:35:36 +01:00
Ken Dreyer
bea2d4a8f7 qa: drop tiobench suite
The tiobench software has been abandoned upstream for years. Fedora and
Debian are no longer shipping the tiobench package, so we've had to
carry the package ourselves in the Ceph project, and we're trying to
slim down our dependencies where it makes sense to do so.

Nuke the tiobench suite.

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

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-01-06 09:00:16 -07:00
Mykola Golub
b5c24e45a9 qa: add test_tell, which currently is used only for testing 'ceph tell mon version'.
The test requires at least two monitors run.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-05 15:53:54 +02:00
Mykola Golub
3b4e021cdc qa: refactor 'ceph -w' magic in test_mon_misc by introducing helper
functions ceph_watch_start and ceph_watch_wait so they can be reused
in other tests.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-05 12:01:15 +02:00
Mykola Golub
11891383ae mon: make ceph tell mon.* version work
Fixes: #6767
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-05 12:01:03 +02:00
Warren Usui
46a1a4cb67 If trusty, use older version of qemu
Fixes #10319
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2014-12-19 18:57:06 -08:00
John Spray
61126a2d71 Merge pull request #3199 from ceph/wip-qa-empty-xattr
qa: test zero size xattr

Reviewed-by: John Spray <john.spray@redhat.com>
2014-12-19 17:03:25 +00:00
Sage Weil
0a25bee539 Merge remote-tracking branch 'gh/wip-fs-quota'
Conflicts:
	src/client/Client.cc
2014-12-19 07:45:02 -08:00
Warren Usui
19dafe1648 Remove sepia dependency (use fqdn)
Fixes: #10255
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2014-12-18 17:16:24 -08:00
Sage Weil
0af2a1c1cc qa/workunits/rest/test.py: fix pg stat test
Back in e27b0d9e42 we changed pg stat to
not dump everything when a formatter is used.

Fixes: #10326
Signed-off-by: Sage Weil <sage@redhat.com>
2014-12-18 15:49:58 -08:00
Sage Weil
5439d9ee70 Merge pull request #3057 from ceph/wip-crush-straw
crush: fix straw bucket scaler bugs

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2014-12-18 14:13:33 -08:00
Yan, Zheng
a806778322 qa: test zero size xattr
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2014-12-18 14:43:54 +08:00
Sage Weil
47f0a52e85 Merge branch 'wyc-quota-v2' of git://github.com/kylinstorage/ceph into wip-fs-quota
Conflicts:
	src/include/ceph_features.h

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Yan, Zheng <zyan@redhat.com>
2014-12-16 14:29:39 -08:00
João Eduardo Luís
639096d9f7 Merge pull request #3146 from ceph/wip-9323
mon: allow full flag to be manually cleared

Reviewed-by: Joao Eduardo Luis <joao@redhat.com>
2014-12-15 16:36:08 +00:00
Ilya Dryomov
35f084d078 qa: add script to test how libceph handles huge auth tickets
Signed-off-by: Ilya Dryomov <idryomov@redhat.com>
2014-12-13 20:49:04 +03:00
Sage Weil
a8f85dccbb mon: allow full flag to be manually cleared
This is like a temporary measure as the mon will try to set them again,
but we have run into cases where the mon was misbehaving (failing to clear
the flag) and we wanted to do it.  Note that the mon will likely set it
again on the next tick() anyway.

If we're going to clear it, we may as well be able to set it, too (again,
even if the mon is going to clear it soon).  If nothing else this is useful
for writing tests.

Fixes: #9323
Signed-off-by: Sage Weil <sage@redhat.com>
2014-12-10 21:00:26 -08:00
Yunchuan Wen
e8063a1a63 test: modify cephfs quota test case
Signed-off-by: Yunchuan Wen <yunchuanwen@ubuntukylin.com>
2014-12-10 15:11:17 +08:00
Sage Weil
89b2feea8d mon: 'osd crush reweight-all'
This corresponds to the crushtool --reweight command.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-12-09 16:09:26 -08:00
Sage Weil
9000068ae4 mon: add 'osd crush {get,set}-tunable <name> [value]' commands
For now, just add the straw_calc_version tunable.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-12-09 16:09:25 -08:00
Sage Weil
c0685ec709 Merge remote-tracking branch 'gh/next' 2014-12-04 08:39:56 -08:00
John Spray
d98cec7f9c qa: fix teardown in cephtool's test_mon_mds
This was missing from 17b5fc9a but we didn't notice
because the test wasn't being run by the gitbuilders.

Signed-off-by: John Spray <john.spray@redhat.com>
2014-12-03 16:26:57 +01:00
Sage Weil
cbac460950 Merge pull request #3067 from dachary/wip-cephtool
fix cephtools running only part of the tests + avoid killing wrong daemons

Reviewed-by: Sage Weil <sage@redhat.com>
2014-12-02 20:53:12 -08:00
Loic Dachary
3047c9e000 qa: cephtool/test.sh use regular strings to list tests
Using the array notation to list test is error prone and more
complicated to write.

It also fixes a bug : only the first test of each series (MON, OSD, MDS)
was run and the others were ignored.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-12-02 23:52:48 +01:00
John Spray
17b5fc9a40 mon: OSDMonitor: allow adding tiers to FS pools
This was an overly-strict check.  In fact it is perfectly
fine to set an overlay on a pool that is already in use
as a filesystem data or metadata pool.

Fixes: #10135

Signed-off-by: John Spray <john.spray@redhat.com>
2014-11-25 16:54:42 +00:00
Yunchuan Wen
00da974431 test: extend quota test case
Signed-off-by: Yunchuan Wen <yunchuanwen@ubuntukylin.com>
2014-11-24 16:29:35 +08:00
Sage Weil
59d8c947dd qa/workunits/fs/misc/quota.sh: simple quota test
Signed-off-by: Sage Weil <sage@redhat.com>
2014-11-12 21:10:37 -08:00
Sage Weil
292be9799e Merge pull request #2902 from dachary/wip-10083-noisy-osd
qa: handle CEPH_CLI_TEST_DUP_COMMAND on ceph osd create

Reviewed-by: Sage Weil <sage@redhat.com>
2014-11-12 11:27:08 -08:00
Loic Dachary
6c80525551 qa: handle CEPH_CLI_TEST_DUP_COMMAND on ceph osd create
If CEPH_CLI_TEST_DUP_COMMAND is set when ceph osd create is called, it
will create two osd. They must be cleaned up afterwards instead of
assuming only one is going to be created.

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

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2014-11-12 19:33:46 +01:00
Josh Durgin
e94d3c11ed qa: allow small allocation diffs for exported rbds
The local filesytem may behave slightly differently. This isn't
foolproof, but seems to be reliable enough on rhel7 rootfs, where
exact comparison was failing.

Fixes: #10002
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2014-11-11 18:16:04 -08:00
Sage Weil
80865fea71 Merge remote-tracking branch 'gh/next' 2014-11-11 16:22:40 -08:00
Samuel Just
1425482450 Merge pull request #2474 from dachary/wip-9420-erasure-code-non-regression
erasure-code: store and compare encoded contents

Reviewed-by: Samuel Just <sjust@redhat.com>
2014-11-10 14:57:42 -08:00
Samuel Just
992a4a843f Merge pull request #2773 from ceph/wip-9852
mon: MDSMonitor: proper error output if pool DNE on 'add_data_pool'

Reviewed-by: Joao Eduardo Luis <joao@redhat.com>
2014-11-10 14:52:10 -08:00
Sage Weil
c914df2de4 qa/workunits/cephtool/test.sh: ceph, not ./ceph
Fixes: #10053
Signed-off-by: Sage Weil <sage@redhat.com>
2014-11-10 14:12:11 -08:00
Greg Farnum
66b920aba3 qa/workunits/fs/misc: combine sudo and echo effectively
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
(cherry picked from commit abc995b6b4)
2014-11-10 11:39:07 -08:00
Loic Dachary
7638b15f23 erasure-code: workunit to check for encoding regression
Clone the archive of encoded objects and decode all archived objects, up
to and including the current ceph version.

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-11-10 14:56:43 +01:00
Loic Dachary
6741b71d90 tests: group workunits/cephtool/test.sh tests per daemon
So all tests related to a given daemon (mon, osd, mds) can be run at
once.

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-11-09 11:59:51 +01:00
Greg Farnum
abc995b6b4 qa/workunits/fs/misc: combine sudo and echo effectively
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2014-11-06 17:59:22 -08:00
Greg Farnum
3aa7797741 qa: use sudo even more when rsyncing /usr
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2014-11-06 17:48:01 -08:00
Yuan Zhou
d13b478094 EC: Allow bench.sh to test ISA backend also
Update bench.sh/plot tool to cover ISA backend.
ISA will output a fake echinique 'cauchy_good' so the plot tool
don't need to be changed.

Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
2014-11-06 15:48:48 +08:00
Loic Dachary
6fca23f610 qa: avoid qa/workunits/cephtool/test.sh unstability
For testing injectargs a configuration option was changed that has side
effects on the cluster. It could introduce random failures later. It is
replaced with a configuration option that cannot have adverse side
effects on the cluster.

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-10-28 22:23:11 +01:00
Dan Mick
9a12467a9c Merge pull request #2733 from dachary/wip-9372-injectargs
cli: do not parse injectargs arguments twice

Reviewed-by:  Dan Mick <dan.mick@inktank.com>
2014-10-23 12:32:37 -07:00
Greg Farnum
fa07c04231 qa: use sudo when rsyncing /usr so we can read everything
Signed-off-by: Greg Farnum <greg@inktank.com>
2014-10-22 17:11:32 -07:00
Sage Weil
d2fe792c91 Merge remote-tracking branch 'gh/giant' 2014-10-21 10:39:42 -07:00
Joao Eduardo Luis
c589f3f6e9 mon: MDSMonitor: proper error output if pool DNE on 'add_data_pool'
Fixes: #9852

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2014-10-21 18:23:49 +01:00
Loic Dachary
2ec3609569 cli: CEPH_ARGS must be before injectargs
It is incorrect to append the content of CEPH_ARGS to the argument list
when running injectargs. For instance if

  CEPH_ARGS='--log-file the.log' \
    ./ceph tell osd.0 injectargs --no-osd_debug_op_order

translates into

    ./ceph tell osd.0 injectargs --no-osd_debug_op_order \
                                 --log-file the.log

it ends up changing the log file of osd.0 which is probably unintended.
Instead CEPH_ARGS is inserted before injectargs and it translates into:

    ./ceph tell osd.0 --log-file the.log \
                      injectargs --no-osd_debug_op_order

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-10-20 23:03:11 -07:00
Loic Dachary
a458bd83f5 cli: do not parse injectargs arguments twice
The arguments of injectargs being valid ceph arguments, they are.
consumed when the ceph cli calls rados.conf_parse_argv(). It can be
worked around by obsuring them as in:

   ceph tell osd.0 injectargs '--osd_debug_drop_ping_probability 444'

where '--osd_debug_drop_ping_probability 444' is a single argument that
does not match any known argument. The trick is that it will be
evaluated again once it reaches the OSD or the MON and translated into
the expected list of arguments. Although it is clear once explained, it
is obscure and leads to strange combinations such as:

   ceph tell osd.0 injectargs '--osd_debug_op_order '

(note the extra space at the end) to set boolean parameters. A better
workaround is to add a -- marking the end of the options as in:

   ceph tell osd.0 -- injectargs --osd_debug_op_order

this one is unfortunately much less documented and the user does not
usually know the exact semantic of --, let alone where it should be
placed.

The simpler solution is to split the argument list in two if
"injectargs" is found. The arguments that show after the "injectargs"
argument is removed from the list of arguments until parsing is
complete. It implements the more intuitive syntax:

   ceph tell osd.0 injectargs --osd_debug_op_order

and the other forms are still valid for backward compatibility.

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

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-10-20 23:03:07 -07:00
Joao Eduardo Luis
ac3c1cb5d0 qa/workunits: cephtool: don't remove self's key on auth tests
Suites run with CEPH_TEST_CLI_DUP_COMMAND=1, which will send a duplicate
command for every command issued with the 'ceph' tool.  Behavior is to
get a reply from the command and then send a duplicate, looking for the
same outcome (guaranteeing idempotency of the operations).  However, it
so happens that if you remove the entity's own key from the keyring and
you happen to be unlucky enough so that the client's connection gets
failed (we also run tests with connection failure injections), the
'ceph' tool won't be able to reconnect to the cluster to send the
duplicate command (as it's entity no longer exists in the cluster's
keyring).

We rewrite the test instead of resorting to ugly hacks to work around
this behavior, simply having a new 'role-definer' added by the existing
'role-definer' (which we weren't testing anyway, so bonus points for
that) and then have one removing the other (to test the procedure) and
finally using 'client.admin' to remove the last 'role-definer'.

Fixes: #9820

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2014-10-20 18:00:15 +01:00
Gregory Farnum
ca44f503cc Merge pull request #2628 from ceph/wip-client-flock
Wip client flock

Add support for file locking to the userspace client, and improve blocked-lock cancellation so that it doesn't remove locks that succeeded when racing.

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-10-16 06:57:34 -07:00
Loic Dachary
3741aab39e auth: unit tests for auid display
Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-10-15 13:25:17 -07:00
Sage Weil
5558afa03d qa/workunits/rbd/import_export.sh: be case insensitive
Stop tripping over this change (from dumpling).

Signed-off-by: Sage Weil <sage@redhat.com>
2014-10-15 12:26:00 -07:00
Yan, Zheng
ac92c455a9 qa/workunits/fs/misc: Add a workunit for file lock interruption
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2014-10-15 12:46:31 +08:00
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 f05c977bbc

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 ee2dbdb0f5

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 ee2dbdb0f5 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