1
2Testcase non-persistent without restart
3
4{"execute": "block-dirty-bitmap-add", "arguments": {"name": "bitmap0", "node": "drive0", "persistent": false}}
5{"return": {}}
6initial bitmap: name=bitmap0 dirty-clusters=1
7{"execute": "blockdev-snapshot-sync", "arguments": {"device": "drive0", "format": "qcow2", "snapshot-file": "TEST_DIR/PID-top"}}
8{"return": {}}
9check that no bitmaps are in snapshot: not found
10{"execute": "block-commit", "arguments": {"device": "drive0", "top": "TEST_DIR/PID-top"}}
11{"return": {}}
12{"data": {"device": "drive0", "len": 65536, "offset": 65536, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_READY", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
13{"execute": "block-job-complete", "arguments": {"device": "drive0"}}
14{"return": {}}
15{"data": {"device": "drive0", "len": 65536, "offset": 65536, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_COMPLETED", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
16check bitmap after commit: name=bitmap0 dirty-clusters=2
17check updated bitmap: name=bitmap0 dirty-clusters=3
18
19Testcase persistent without restart
20
21{"execute": "block-dirty-bitmap-add", "arguments": {"name": "bitmap0", "node": "drive0", "persistent": true}}
22{"return": {}}
23initial bitmap: name=bitmap0 dirty-clusters=1
24{"execute": "blockdev-snapshot-sync", "arguments": {"device": "drive0", "format": "qcow2", "snapshot-file": "TEST_DIR/PID-top"}}
25{"return": {}}
26check that no bitmaps are in snapshot: not found
27{"execute": "block-commit", "arguments": {"device": "drive0", "top": "TEST_DIR/PID-top"}}
28{"return": {}}
29{"data": {"device": "drive0", "len": 65536, "offset": 65536, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_READY", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
30{"execute": "block-job-complete", "arguments": {"device": "drive0"}}
31{"return": {}}
32{"data": {"device": "drive0", "len": 65536, "offset": 65536, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_COMPLETED", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
33check bitmap after commit: name=bitmap0 dirty-clusters=2
34check updated bitmap: name=bitmap0 dirty-clusters=3
35
36Testcase persistent with restart
37
38{"execute": "block-dirty-bitmap-add", "arguments": {"name": "bitmap0", "node": "drive0", "persistent": true}}
39{"return": {}}
40initial bitmap: name=bitmap0 dirty-clusters=1
41{"execute": "blockdev-snapshot-sync", "arguments": {"device": "drive0", "format": "qcow2", "snapshot-file": "TEST_DIR/PID-top"}}
42{"return": {}}
43check that no bitmaps are in snapshot: not found
44... Restart ...
45{"execute": "block-commit", "arguments": {"device": "drive0", "top": "TEST_DIR/PID-top"}}
46{"return": {}}
47{"data": {"device": "drive0", "len": 65536, "offset": 65536, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_READY", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
48{"execute": "block-job-complete", "arguments": {"device": "drive0"}}
49{"return": {}}
50{"data": {"device": "drive0", "len": 65536, "offset": 65536, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_COMPLETED", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
51check bitmap after commit: name=bitmap0 dirty-clusters=2
52check updated bitmap: name=bitmap0 dirty-clusters=3
53