]> git.proxmox.com Git - ceph.git/blob - ceph/qa/workunits/rados/test_pool_quota.sh
bump version to 12.1.1-pve1 while rebasing patches
[ceph.git] / ceph / qa / workunits / rados / test_pool_quota.sh
1 #!/bin/sh -ex
2
3 p=`uuidgen`
4
5 # objects
6 ceph osd pool create $p 12
7 ceph osd pool set-quota $p max_objects 10
8
9 for f in `seq 1 10` ; do
10 rados -p $p put obj$f /etc/passwd
11 done
12
13 sleep 30
14
15 rados -p $p put onemore /etc/passwd &
16 pid=$!
17
18 ceph osd pool set-quota $p max_objects 100
19 wait $pid
20 [ $? -ne 0 ] && exit 1 || true
21
22 rados -p $p put twomore /etc/passwd
23
24 # bytes
25 ceph osd pool set-quota $p max_bytes 100
26 sleep 30
27
28 rados -p $p put two /etc/passwd &
29 pid=$!
30
31 ceph osd pool set-quota $p max_bytes 0
32 ceph osd pool set-quota $p max_objects 0
33 wait $pid
34 [ $? -ne 0 ] && exit 1 || true
35
36 rados -p $p put three /etc/passwd
37
38
39 #one pool being full does not block a different pool
40
41 pp=`uuidgen`
42
43 ceph osd pool create $pp 12
44
45 # set objects quota
46 ceph osd pool set-quota $pp max_objects 10
47 sleep 30
48
49 for f in `seq 1 10` ; do
50 rados -p $pp put obj$f /etc/passwd
51 done
52
53 sleep 30
54
55 rados -p $p put threemore /etc/passwd
56
57 ceph osd pool set-quota $p max_bytes 0
58 ceph osd pool set-quota $p max_objects 0
59
60 sleep 30
61 # done
62 ceph osd pool delete $p $p --yes-i-really-really-mean-it
63 ceph osd pool delete $pp $pp --yes-i-really-really-mean-it
64
65 echo OK
66