23.07.2020 11:35, Max Reitz wrote:
On 01.06.20 20:11, Vladimir Sementsov-Ogievskiy wrote:
The further change of moving backup to be a on block-copy call will
-on?
make copying chunk-size and cluster-size a separate things. So, even
s/a/two/
with 64k cluster sized qcow2 image, default chunk would be 1M.
Test 219 depends on specified chunk-size. Update it for explicit
chunk-size for backup as for mirror.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsement...@virtuozzo.com>
---
tests/qemu-iotests/219 | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/tests/qemu-iotests/219 b/tests/qemu-iotests/219
index db272c5249..2bbed28f39 100755
--- a/tests/qemu-iotests/219
+++ b/tests/qemu-iotests/219
@@ -203,13 +203,13 @@ with iotests.FilePath('disk.img') as disk_path, \
# but related to this also automatic state transitions like job
# completion), but still get pause points often enough to avoid making
this
# test very slow, it's important to have the right ratio between speed and
- # buf_size.
+ # copy-chunk-size.
#
- # For backup, buf_size is hard-coded to the source image cluster size
(64k),
- # so we'll pick the same for mirror. The slice time, i.e. the granularity
- # of the rate limiting is 100ms. With a speed of 256k per second, we can
- # get four pause points per second. This gives us 250ms per iteration,
- # which should be enough to stay deterministic.
+ # Chose 64k copy-chunk-size both for mirror (by buf_size) and backup (by
+ # x-max-chunk). The slice time, i.e. the granularity of the rate limiting
+ # is 100ms. With a speed of 256k per second, we can get four pause points
+ # per second. This gives us 250ms per iteration, which should be enough to
+ # stay deterministic.
Don’t we also have to limit the number of workers to 1 so we actually
keep 250 ms per iteration instead of just finishing four requests
immediately, then pausing for a second?
Block-copy rate limiter works good enough: it will not start too much requests.
test_job_lifecycle(vm, 'drive-mirror', has_ready=True, job_args={
'device': 'drive0-node',
@@ -226,6 +226,7 @@ with iotests.FilePath('disk.img') as disk_path, \
'target': copy_path,
'sync': 'full',
'speed': 262144,
+ 'x-max-chunk': 65536,
'auto-finalize': auto_finalize,
'auto-dismiss': auto_dismiss,
})
--
Best regards,
Vladimir