summaryrefslogtreecommitdiff
path: root/src/test/test_pools.sh
blob: 68143508c15b8b9d2766a7011f71f4ee263f5b02 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/bin/bash -x

#
# Test pools
#

# Includes
source "`dirname $0`/test_common.sh"

# Functions
setup() {
        export CEPH_NUM_OSD=$1

        # Start ceph
        ./stop.sh

        ./vstart.sh -d -n || die "vstart failed"
}

test629_impl() {
        # create the pool
        ./rados -c ./ceph.conf mkpool foo || die "mkpool failed"

        # Write lots and lots of objects
        write_objects 1 1 10 1000000 foo

        # Take down first osd
        stop_osd 0

        # Now degraded PGs should exist
        poll_cmd "./ceph pg debug degraded_pgs_exist" TRUE 3 120

        # delete the pool
        ./rados -c ./ceph.conf rmpool foo || die "rmpool failed"

        # make sure the system is stable
        sleep 10
}

test629(){
        setup 3
        test629_impl
}

run() {
        test629 || die "test failed"
}

$@