John Spray [Wed, 21 Jan 2015 14:39:47 +0000 (14:39 +0000)]
suites/fs: isolate quota task
Quota script is moved out of fs/misc so that kclient
doesn't try to run it. Update cfuse suite to find
the new location, and only enable quota for this
one script rather than enabling across
all misc tests.
Fixes: #10579 Signed-off-by: John Spray <john.spray@redhat.com>
John Spray [Mon, 19 Jan 2015 21:32:50 +0000 (21:32 +0000)]
tasks/mds_flush: use new stray/purge perfcounters
Where previously we only tracked RADOS-level delete
ops during deletion, now also verify that they
correspond to the right number of MDS-level purge
operations.
Loic Dachary [Fri, 21 Nov 2014 15:38:54 +0000 (16:38 +0100)]
ceph_manager: add ceph-objectstore-tool wrapper
Add the CephManager.objectstore_tool method to encapsulate a call to
ceph-objectstore-tool. The wrapper can convert an object name into the
PG id and figure out the primary OSD. The designated OSD is stopped
before running the command and restarted afterwards.
Loic Dachary [Fri, 21 Nov 2014 15:38:54 +0000 (16:38 +0100)]
ceph_manager: add ceph-objectstore-tool wrapper
Add the CephManager.objectstore_tool method to encapsulate a call to
ceph-objectstore-tool. The wrapper can convert an object name into the
PG id and figure out the primary OSD. The designated OSD is stopped
before running the command and restarted afterwards.
Dan Mick [Tue, 13 Jan 2015 03:42:19 +0000 (19:42 -0800)]
tasks/calamari_setup: build ice-tools virtualenv if building iceball
ice-tools needs a virtualenv populated to properly run to build
an iceball; add the commands to do that. Also remove the built
iceball when the task exits.
Fixes: #10523 Signed-off-by: Dan Mick <dan.mick@redhat.com>
Dan Mick [Tue, 13 Jan 2015 00:36:14 +0000 (16:36 -0800)]
tasks/calamari_setup: use ice_version to completely specify iceball
Previously, the task would search for the lexicographically-greatest
filename matching ICE-*.tar.gz; now it builds a specific name
ICE-{ice_version}-{ice_distro}.tar.gz
Fixes: #10521 Signed-off-by: Dan Mick <dan.mick@redhat.com>
The small segments and small segment limit
were used when doing a hacky flush by doing
IO and waiting: now that we have the explicit
'flush journal' asok in use, we can just use
a normal journal configuration.
John Spray [Tue, 23 Dec 2014 16:11:12 +0000 (16:11 +0000)]
tasks/cephfs: remove `config` from Filesystem cons
This was only used in get_first_mon, which doesn't actually
need the parameter itself. Makes it easier to casually
use Filesystem from any place with a ctx to hand.
John Spray [Fri, 19 Dec 2014 14:03:41 +0000 (14:03 +0000)]
tasks/cephfs: umount unused clients before running
When unused clients were mounted during an fs new,
they would end up in a state where they stalled
on subsequent attempts to umount them (ceph-fuse
stalls on exit if it can't terminate its mds_session)
John Spray [Thu, 18 Dec 2014 19:38:53 +0000 (19:38 +0000)]
tasks/cephfs: be more precise in set_clients_block
Instead of blocking the whole port range (which
might make OSDs running on that node collateral
damage), read the MDS's port out of the MDS map
and just block that.
John Spray [Thu, 18 Dec 2014 18:24:37 +0000 (18:24 +0000)]
tasks/cephfs: use set_conf() from test case class
...because this is the one that will store up
changes to roll back during teardown.
Doing this makes it easy to run lots of test cases
togeher in a single teuthology run, raher than
setting up/tearing down the ceph cluster for each
on.
John Spray [Thu, 18 Dec 2014 13:03:40 +0000 (13:03 +0000)]
tasks/cephfs: move common setUp/tearDown to parent
Now that we have more of these cases, there was lots
of duplication in setup and teardown. For some tests
the "reset everything" setup/teardown is overkill,
but it's harmless.
Ken Dreyer [Tue, 6 Jan 2015 15:59:14 +0000 (08:59 -0700)]
drop tiobench tests
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.
This is tryign to create the archive dir on the remote host:
2014-12-29T12:15:30.213 INFO:teuthology.orchestra.run.plana31:Running: 'mkdir -p /var/lib/teuthworker/archive/sage-2014-12-29_11:40:52-rgw-next---basic-multi/683052'
2014-12-29T12:15:30.231 ERROR:teuthology.contextutil:Saw exception from nested tasks
Traceback (most recent call last):
File "/home/teuthworker/src/teuthology_master/teuthology/contextutil.py", line 28, in nested
vars.append(enter())
File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__
return self.gen.next()
File "/var/lib/teuthworker/src/ceph-qa-suite_next/tasks/s3readwrite.py", line 241, in run_tests
ctx.cluster.only(client).run(args=['mkdir', '-p', archive_dir])
File "/home/teuthworker/src/teuthology_master/teuthology/orchestra/cluster.py", line 64, in run
return [remote.run(**kwargs) for remote in remotes]
File "/home/teuthworker/src/teuthology_master/teuthology/orchestra/remote.py", line 128, in run
r = self._runner(client=self.ssh, name=self.shortname, **kwargs)
File "/home/teuthworker/src/teuthology_master/teuthology/orchestra/run.py", line 368, in run
r.wait()
File "/home/teuthworker/src/teuthology_master/teuthology/orchestra/run.py", line 106, in wait
exitstatus=status, node=self.hostname)
CommandFailedError: Command failed on plana31 with status 1: 'mkdir -p /var/lib/teuthworker/archive/sage-2014-12-29_11:40:52-rgw-next---basic-multi/683052'
John Spray [Mon, 3 Nov 2014 15:38:57 +0000 (15:38 +0000)]
tasks: create mds_flush task
This tests:
* The new 'flush journal' asok command
* That the resulting on disk structures are as expected
* That cephfs-journal-tool is happy with the result
Fixes: #9881 Signed-off-by: John Spray <john.spray@redhat.com>
John Spray [Mon, 15 Dec 2014 11:12:34 +0000 (11:12 +0000)]
tasks/cephfs: let get_config use non-mon services
Previously was always using the default values of things
so querying mon instead of the appropriate service
worked fine. However, for things we might want to
update on a per-test basis we need to go ask the
correct service what the setting really is.
Needed for osd_mon_report_interval_max in the ENOSPC
testing.