Commit Graph

77 Commits

Author SHA1 Message Date
John Spray
36ec6f9e0b tasks/cephfs: test_pool_perm whitespace
PEP8-ize.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-07-28 10:34:57 +01:00
Gregory Farnum
ba6e8e6d94 Merge pull request #464 from ceph/wip-offline-backward
Tests for damage handling and cephfs-data-scan

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-07-14 11:43:02 +01:00
Yan, Zheng
44dc0320fa Merge pull request #470 from ceph/wip-4161
Add cephfs TestBacktrace
2015-07-13 17:22:58 +08:00
Yan, Zheng
78a62d41b8 Merge pull request #466 from ceph/wip-damaged-fixes
Tests for wip-damaged-fixes
2015-07-13 17:03:14 +08:00
Yan, Zheng
835ad8b8f3 cephfs/test_auto_repair.py: flush journal after umount
When client capabilities get released, MDS may update corresponding
inodes' client writable range and mark those inodes dirty. The auto
repair test expects MDS to trim inodes from its cache, but MDS can't
trim dirty inodes. So we should flush journal after umount.

Fixes: #12172
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-06-29 17:52:44 +08:00
John Spray
21abe9d928 tasks/cephfs: add test_backtrace
This is for verifying the new layout-writing behaviour.  While
we're at it, test that the pre-existing backtrace behaviours
are really happening (updating old_pools)

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-25 17:19:03 +01:00
John Spray
fa16974063 tasks/cephfs: add TestDamage
Tests MDS response to badness in the metadata tool

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-18 11:22:12 +01:00
John Spray
cc2e9ff579 tasks/cephfs: allow stdin for Filesystem.rados
Useful for puts when injecting data to test
corruption handling.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-18 11:22:12 +01:00
John Spray
655d197a6b tasks/cephfs: add CephFSMount.stat
Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-18 11:22:11 +01:00
John Spray
f7e932fb8f tasks/cephfs: add TestDamage
Tests MDS response to badness in the metadata tool

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-17 14:22:17 +01:00
John Spray
40d0c05c35 tasks/cephfs: add TestDataScan
For testing the new cephfs-data-scan disaster recovery
utility.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-17 14:09:59 +01:00
John Spray
d2cec6a669 tasks/cephfs: add CephFSMount.ls
Just a helper for functions that inspect
the contents of the mount, such as in
test_data_scan

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-17 14:06:23 +01:00
John Spray
e6afe66b24 tasks/cephfs: allow stdin for Filesystem.rados
Useful for puts when injecting data to test
corruption handling.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-17 14:06:23 +01:00
John Spray
718eaee5e5 tasks/cephfs: add CephFSMount.stat
Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-17 14:06:22 +01:00
John Spray
0f34d0785c tasks/cephfs: add Filesystem.data_scan wrapper
Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-17 14:06:22 +01:00
John Spray
63a563d0e7 tasks/cephfs: fix race in test_full
Sometimes mount A would get a cap revoke when mount
B did its last IO, resulting in mount A's OSD epoch
getting updated too.

Fix by making sure mount B is the last one to have
done IO before we do the barrier, so that when
it does IO again after the barrier, mount A can't
be holding any caps that B would need.

Fixes: #11913
Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-11 11:21:26 +01:00
Gregory Farnum
7f8b8660d9 Merge pull request #449 from ceph/wip-fsync
tasks/cephfs: add TestClientRecovery.test_fsync

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-06-05 13:50:17 -07:00
John Spray
6d3b5c6b5e tasks/cephfs: add TestClientRecovery.test_fsync
To test that metadata written recently is
preserved across a client+server crash when
barriered with a directory fsync.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-05-29 14:33:01 +01:00
John Spray
df91f98e5b tasks/cephfs: fix typo in blacklist clearing
Broken in aa0ffb3

Signed-off-by: John Spray <john.spray@redhat.com>
2015-05-29 13:46:01 +01:00
Gregory Farnum
d9959b18ba Merge pull request #443 from ceph/wip-11301
tasks/cephfs: reset osd blacklist between tests

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-05-27 14:29:26 -07:00
Gregory Farnum
4a79c75daf Merge pull request #447 from ceph/wip-11779
tasks/cephfs: fix timing in test_full

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-05-27 14:17:27 -07:00
John Spray
5ff2743de4 tasks/cephfs: fix timing in test_full
The interval between writes was too short because
it was not taking account of the way OSDMap full
flags are set on tick rather than immediately.

Fixes: #11779

Signed-off-by: John Spray <john.spray@redhat.com>
2015-05-27 12:40:49 +01:00
Yan, Zheng
bd542353f5 tasks/cephfs: mount fusectl before listing fuse connections
Fixes: #11756
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-05-26 22:18:57 +08:00
John Spray
aa0ffb313c tasks/cephfs: reset osd blacklist between tests
...to avoid OSDMap modifications happening in the
background due to blacklist expiry.

Fixes: #11301

Signed-off-by: John Spray <john.spray@redhat.com>
2015-05-22 11:04:46 +01:00
Gregory Farnum
fed8837c98 Merge pull request #442 from ceph/wip-client-cache-size
cephfs/test_client_limits.py: invalidate kernel dcache according to client cache size

Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-05-15 10:36:16 -07:00
Gregory Farnum
8eb3255a4c Merge pull request #425 from ceph/wip-flock-optional
cephfs/mount: check FUSE version before invoking flock

Reviewed-by: John Spray <john.spray@redhat.com>
2015-05-14 21:52:30 -07:00
Yan, Zheng
c7e8e544a8 cephfs/test_client_limits.py: invalidate kernel dcache according to client_cache_size
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-05-13 14:40:28 +08:00
Greg Farnum
f780f1894b cephfs/test_client_recovery: check FUSE version before invoking flock
flock only works properly on FUSE versions >=2.9, which is newer
than eg Ubuntu Precise. So check the version on our client mounts and
only test flock if it's at least that new.

Fixes: #9995

Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2015-05-12 14:43:19 -07:00
John Spray
13c7f97d89 tasks/cephfs: cover pool quota in test_full
Run the same procedure as TestClusterFull, but
instead of limiting OSD memstore size, use pool
quota on the data pool.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-05-08 14:09:59 +01:00
Yan, Zheng
539117a38d tasks/cephfs: add test_pool_perm
This tests that client checks pool permission before
copy data to its cache.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-04-28 20:38:32 +08:00
Yan, Zheng
e850645fe4 cephfs/test_client_limits.py: test for client oldest tid warning
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-04-21 23:29:47 +08:00
Greg Farnum
35b6fb436c Merge remote-tracking branch 'origin/wip-3645-fixup' into greg-testing-snapshot-rename 2015-04-19 18:21:08 -07:00
John Spray
f36011051c tasks/cephfs: cope with missing ctx.daemons attr
...so that we may be used with the ceph_deploy task
that doesn't set that up.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-19 17:46:18 -07:00
John Spray
8b61310ce3 tasks/cephfs: tweak use of mon for admin commands
... s/mon_remote/admin_remote/ and allow caller to pass
in which remote they want to use for that.  Enables use
with ceph_deploy task which does not give admin keys
to mons.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-19 17:46:18 -07:00
John Spray
ea7c39222a tasks/ceph: refactor legacy FS configuration check
Move up into Filesystem so that this can be used from
the ceph_deploy task as well.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-19 17:46:18 -07:00
John Spray
7bc8875b42 tasks: implement TestStrays.test_mv_hardlink_cleanup
Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-14 14:13:40 +01:00
John Spray
a2a8c21abe tasks: update test_journal_repair
This broke with recent Client changes that
do better caching of readdir results, such
that doing an ls twice is no longer sufficient
to see a fresh result after repair - we need
to remount instead.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-14 14:13:40 +01:00
John Spray
097ccbb5be tasks: update journal_repair test for 'damaged' state
To track recent change in master where instead of
crashing on missing MDSTable object we'll go
into damaged state.

Instead of catching a crash, handle the rank's
transition to the damanged state.  Leave the crash
handling code (unused for the moment) in the
Filesystem class in case it's needed elsewhere
soon.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-14 14:13:39 +01:00
John Spray
bd3ae1eeba tasks/cephfs: add test_strays
This tests the new purge file/ops throttling
in the MDS, via the new perf counters for
strays/purging.

Fixes: #10390
Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-14 14:13:39 +01:00
John Spray
abb635588f tasks/cephfs: add test_sessionmap
Tests for the persistence behaviour of SessionMap.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-14 14:13:39 +01:00
John Spray
2b5137bf06 tasks: generalise cephfs test runner
...to avoid having boilerplate in each test module,
and gain the ability to run them all in one go
with a nice test-by-test pass/fail report.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-14 14:13:39 +01:00
John Spray
79906e3d07 tasks/cephfs: better multiple-mds handling
Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-14 14:13:39 +01:00
John Spray
ce1196d62f tasks/cephfs: be tolerant of multiple MDSs
...as long as only one is active, all the ops
that default to talking to a single MDS should
be happy to talk to the active MDS, even if there
happens to be a standby lying around too.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-04-14 14:13:38 +01:00
John Spray
1647453d66 Merge pull request #356 from ceph/wip-10948
tasks/cephfs: don't run iptables in parallel

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-03-03 20:25:09 +00:00
John Spray
5b2fd3d614 tasks/cephfs: don't run iptables in parallel
Where multiple MDSs were on the same node, trying
to concurrently update their firewall state was
causing an exception because the iptables command
errors out if another instance is already running.

Fixes: #10948
Signed-off-by: John Spray <john.spray@redhat.com>
2015-03-02 12:41:13 +00:00
John Spray
fc4e90930b tasks/cephfs: fix/improve fuse force umount (again)
teuthology helpfully escapes things for us so
the \; didn't need the backslash.  The logic
was still falling over in some cases too.

Additionally, make the FUSE /sys/ abort operation
more surgical by working out the connection name
of our own mount during mount().

Signed-off-by: John Spray <john.spray@redhat.com>
2015-02-26 23:08:33 +00:00
Alfredo Deza
0a65e90db2 remove uneeded variable assignment for call
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2015-02-26 11:35:31 -05:00
Alfredo Deza
3a18cb29a8 remove redefined StringIO import
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2015-02-26 11:35:07 -05:00
John Spray
03b0e1064c tasks/cephfs: fix fuse force unmount
This was broken in the case of multiple
mounts, and in the case of stuck mounts.

Fixes: #10702
Signed-off-by: John Spray <john.spray@redhat.com>
2015-02-10 14:58:23 +00:00
John Spray
bf13a4e062 tasks/mds_journal_repair: create new test
This tests the new #9883 repair functionality
where we selectively scrape dentries out of
the journal while the MDS is offline.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-01-19 19:36:34 +00:00