<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libvirt.git/tests/qemublocktestdata/bitmapblockcommit, branch master</title>
<subtitle>libvirt.org: git/libvirt.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/'/>
<entry>
<title>qemu: block: Remove 'active-write' bitmap even if there are no bitmaps to merge</title>
<updated>2020-07-21T07:52:59+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-07-16T12:46:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=9d039863e2cae227cc73b7a886b40be5e5218a12'/>
<id>9d039863e2cae227cc73b7a886b40be5e5218a12</id>
<content type='text'>
The 'libvirt-tmp-activewrite' bitmap is added during the 'pivot'
operation of block copy and active layer block commit operations
regardless of whether there are any bitmaps to merge, but was not
removed unless a bitmap was merged. This meant that subsequent attempts
to merge into the same image would fail.

Fix it by checking whether the 'libvirt-tmp-activewrite' would be used
by the code and don't skip the code which would delete it.

This is a regression introduced when we switched to the new code for
block commit in &lt;20a7abc2d2d&gt; and for block copy in &lt;7bfff40fdfe5&gt;. The
actual bug originates from &lt;4fa8654ece&gt;.

https://bugzilla.redhat.com/show_bug.cgi?id=1857735

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The 'libvirt-tmp-activewrite' bitmap is added during the 'pivot'
operation of block copy and active layer block commit operations
regardless of whether there are any bitmaps to merge, but was not
removed unless a bitmap was merged. This meant that subsequent attempts
to merge into the same image would fail.

Fix it by checking whether the 'libvirt-tmp-activewrite' would be used
by the code and don't skip the code which would delete it.

This is a regression introduced when we switched to the new code for
block commit in &lt;20a7abc2d2d&gt; and for block copy in &lt;7bfff40fdfe5&gt;. The
actual bug originates from &lt;4fa8654ece&gt;.

https://bugzilla.redhat.com/show_bug.cgi?id=1857735

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemublocktest: Add 'snapshots' tests for block commit bitmap handling</title>
<updated>2020-06-22T14:04:31+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-05-29T11:03:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=b5eaabfbf892c8d4a30b2822325959a6ecb93cb6'/>
<id>b5eaabfbf892c8d4a30b2822325959a6ecb93cb6</id>
<content type='text'>
Simulate commit between all the combinations of layers in the
'snapshots' case to see whether the code merges the correct bitmaps with
the correct depth of temporary bitmaps.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Simulate commit between all the combinations of layers in the
'snapshots' case to see whether the code merges the correct bitmaps with
the correct depth of temporary bitmaps.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemublocktest: Add 'basic' tests for commit bitmap handling</title>
<updated>2020-06-22T14:04:30+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-05-29T11:01:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=79bc7c1828212c165d8b71bd6166ca24695a8ecd'/>
<id>79bc7c1828212c165d8b71bd6166ca24695a8ecd</id>
<content type='text'>
In the 'basic' case we have few bitmaps in only the top layer. Simulate
commit into the backing of the top layer and also 2 levels deep.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In the 'basic' case we have few bitmaps in only the top layer. Simulate
commit into the backing of the top layer and also 2 levels deep.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemu: Rewrite bitmap handling for block commit</title>
<updated>2020-06-22T14:04:30+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-04-17T07:51:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=20a7abc2d2d8a378103abf105fa0c617218ec023'/>
<id>20a7abc2d2d8a378103abf105fa0c617218ec023</id>
<content type='text'>
Reuse qemuBlockGetBitmapMergeActions which allows removing the ad-hoc
implementation of bitmap merging for block commit. The new approach is
way simpler and more robust and also allows us to get rid of the
disabling of bitmaps done prior to the start as we actually do want to
update the bitmaps in the base.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reuse qemuBlockGetBitmapMergeActions which allows removing the ad-hoc
implementation of bitmap merging for block commit. The new approach is
way simpler and more robust and also allows us to get rid of the
disabling of bitmaps done prior to the start as we actually do want to
update the bitmaps in the base.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemublocktest: Disable testcases for all bitmap handling</title>
<updated>2020-06-22T14:04:30+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-05-28T15:02:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=e0828604f77b61d8ee41e72758b0c9d712b1e263'/>
<id>e0828604f77b61d8ee41e72758b0c9d712b1e263</id>
<content type='text'>
Upcoming patches are going to rewrite and semantically modify how
bitmaps are handled during blockjobs. This is possible as incremental
backup is not yet fully enabled.

As the changes are going to be incompatible with any current test data
remove all test cases for bitmap handling during checkpoint deletion,
incremental backups, block commit, block copy, and bitmap validation
operations.

The tests will be gradually added back later after the code and
test-data is refactored.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Upcoming patches are going to rewrite and semantically modify how
bitmaps are handled during blockjobs. This is possible as incremental
backup is not yet fully enabled.

As the changes are going to be incompatible with any current test data
remove all test cases for bitmap handling during checkpoint deletion,
incremental backups, block commit, block copy, and bitmap validation
operations.

The tests will be gradually added back later after the code and
test-data is refactored.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemublocktest: Add 'empty' case for checkpoint bitmap handling</title>
<updated>2020-06-22T14:04:29+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-05-28T14:34:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=cc1a33b59940f9e2a0856ac49dd9b8a185df8a01'/>
<id>cc1a33b59940f9e2a0856ac49dd9b8a185df8a01</id>
<content type='text'>
Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemublocktest: Add tests for re-enabling of bitmaps after commit</title>
<updated>2020-03-17T15:32:13+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-03-17T14:51:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=cab3622119a73a54e62e5f2d7b4257da00bd4ac8'/>
<id>cab3622119a73a54e62e5f2d7b4257da00bd4ac8</id>
<content type='text'>
Some branches were not covered and thus we didn't catch that the bitmaps
are not re-enabled if nothing is merged into them. Two bitmaps are
necessary to reliably test the case due to hash table ordering.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Ján Tomko &lt;jtomko@redhat.com&gt;
Reviewed-by: Daniel P. Berrangé &lt;berrange@redhat.com&gt;
Tested-by: Daniel P. Berrangé &lt;berrange@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some branches were not covered and thus we didn't catch that the bitmaps
are not re-enabled if nothing is merged into them. Two bitmaps are
necessary to reliably test the case due to hash table ordering.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Ján Tomko &lt;jtomko@redhat.com&gt;
Reviewed-by: Daniel P. Berrangé &lt;berrange@redhat.com&gt;
Tested-by: Daniel P. Berrangé &lt;berrange@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemublocktest: Add tests of broken bitmap chain handling during block-commit</title>
<updated>2020-03-16T16:33:08+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-03-04T16:25:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=4e9bb10cf3f3d2c2b13a6e889209e2fac88e1ea7'/>
<id>4e9bb10cf3f3d2c2b13a6e889209e2fac88e1ea7</id>
<content type='text'>
Use the 'snapshots-synthetic-broken' test data for block-commit.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use the 'snapshots-synthetic-broken' test data for block-commit.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemublocktest: Add more tests for block-commit bitmap handling with snapshots</title>
<updated>2020-03-16T16:33:08+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-03-02T16:26:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=8f096cd8808b186d451ec100c646dc8ddd974735'/>
<id>8f096cd8808b186d451ec100c646dc8ddd974735</id>
<content type='text'>
Test handling of more complex cases of merging bitmaps accross
snapshots.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Test handling of more complex cases of merging bitmaps accross
snapshots.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qemublocktest: Add tests for handling of bitmaps during block-commit</title>
<updated>2020-03-16T16:33:08+00:00</updated>
<author>
<name>Peter Krempa</name>
<email>pkrempa@redhat.com</email>
</author>
<published>2020-03-02T16:16:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt.git/commit/?id=77b9d574b41e79bbeb87ee0443dd60c4fde8a79a'/>
<id>77b9d574b41e79bbeb87ee0443dd60c4fde8a79a</id>
<content type='text'>
Add code for testing the two necessary steps of handling bitmaps during
block commit and exercise the code on the test data which we have for
bitmap handling.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add code for testing the two necessary steps of handling bitmaps during
block commit and exercise the code on the test data which we have for
bitmap handling.

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
