[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 12/25] iotests: 56: prepare for backup over block-copy
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
[PATCH v3 12/25] iotests: 56: prepare for backup over block-copy |
Date: |
Mon, 26 Oct 2020 20:18:02 +0300 |
After introducing parallel async copy requests instead of plain
cluster-by-cluster copying loop, we'll have to wait for paused status,
as we need to wait for several parallel request. So, let's gently wait
instead of just asserting that job already paused.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
---
tests/qemu-iotests/056 | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/tests/qemu-iotests/056 b/tests/qemu-iotests/056
index 052456aa00..e2978ba019 100755
--- a/tests/qemu-iotests/056
+++ b/tests/qemu-iotests/056
@@ -307,8 +307,13 @@ class BackupTest(iotests.QMPTestCase):
event = self.vm.event_wait(name="BLOCK_JOB_ERROR",
match={'data': {'device': 'drive0'}})
self.assertNotEqual(event, None)
- # OK, job should be wedged
- res = self.vm.qmp('query-block-jobs')
+ # OK, job should pause, but it can't do it immediately, as it can't
+ # cancel other parallel requests (which didn't fail)
+ with iotests.Timeout(60, "Timeout waiting for backup actually paused"):
+ while True:
+ res = self.vm.qmp('query-block-jobs')
+ if res['return'][0]['status'] == 'paused':
+ break
self.assert_qmp(res, 'return[0]/status', 'paused')
res = self.vm.qmp('block-job-dismiss', id='drive0')
self.assert_qmp(res, 'error/desc',
--
2.21.3
- [PATCH v3 05/25] block/block-copy: add max_chunk and max_workers parameters, (continued)
- [PATCH v3 05/25] block/block-copy: add max_chunk and max_workers parameters, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 02/25] qapi: backup: add perf.use-copy-range parameter, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 03/25] block/block-copy: More explicit call_state, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 06/25] block/block-copy: add list of all call-states, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 04/25] block/block-copy: implement block_copy_async, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 08/25] block/block-copy: add block_copy_cancel, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 09/25] blockjob: add set_speed to BlockJobDriver, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 07/25] block/block-copy: add ratelimit to block-copy, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 10/25] job: call job_enter from job_user_pause, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 11/25] qapi: backup: add max-chunk and max-workers to x-perf struct, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 12/25] iotests: 56: prepare for backup over block-copy,
Vladimir Sementsov-Ogievskiy <=
- [PATCH v3 14/25] iotests: 185: prepare for backup over block-copy, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 13/25] iotests: 129: prepare for backup over block-copy, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 15/25] iotests: 219: prepare for backup over block-copy, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 18/25] block/backup: drop extra gotos from backup_run(), Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 19/25] backup: move to block-copy, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 22/25] block/block-copy: drop unused argument of block_copy(), Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 17/25] block/block-copy: make progress_bytes_callback optional, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 20/25] qapi: backup: disable copy_range by default, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 23/25] simplebench/bench_block_job: use correct shebang line with python3, Vladimir Sementsov-Ogievskiy, 2020/10/26
- [PATCH v3 16/25] iotests: 257: prepare for backup over block-copy, Vladimir Sementsov-Ogievskiy, 2020/10/26