aboutsummaryrefslogtreecommitdiff
path: root/tests/qemu-iotests/030
diff options
context:
space:
mode:
Diffstat (limited to 'tests/qemu-iotests/030')
-rwxr-xr-xtests/qemu-iotests/03017
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/qemu-iotests/030 b/tests/qemu-iotests/030
index 276e06b5ba..c6311d1825 100755
--- a/tests/qemu-iotests/030
+++ b/tests/qemu-iotests/030
@@ -314,6 +314,23 @@ class TestParallelOps(iotests.QMPTestCase):
self.wait_until_completed(drive='commit-drive0')
+ # In this case the base node of the stream job is the same as the
+ # top node of commit job. Since block-commit removes the top node
+ # when it finishes, this is not allowed.
+ def test_overlapping_4(self):
+ self.assert_no_active_block_jobs()
+
+ # Commit from node2 into node0
+ result = self.vm.qmp('block-commit', device='drive0', top=self.imgs[2], base=self.imgs[0])
+ self.assert_qmp(result, 'return', {})
+
+ # Stream from node2 into node4
+ result = self.vm.qmp('block-stream', device='node4', base_node='node2', job_id='node4')
+ self.assert_qmp(result, 'error/class', 'GenericError')
+
+ self.wait_until_completed()
+ self.assert_no_active_block_jobs()
+
# Test a block-stream and a block-commit job in parallel
# Here the stream job is supposed to finish quickly in order to reproduce
# the scenario that triggers the bug fixed in 3d5d319e1221 and 1a63a907507