https://progress.opensuse.org/https://progress.opensuse.org/themes/openSUSE/favicon/favicon.ico?15829177842021-05-26T15:12:54ZopenSUSE Project Management ToolopenQA Project - action #93141: t/18-qemu-options.t fails on Leap 15.2 with coverage enabledhttps://progress.opensuse.org/issues/93141?journal_id=4107772021-05-26T15:12:54Ztinitatina.mueller+trick-redmine@suse.com
<ul></ul><a name="Hints-for-debugging"></a>
<h2 >Hints for debugging<a href="#Hints-for-debugging" class="wiki-anchor">¶</a></h2>
<a name="Prepare-environment"></a>
<h3 >Prepare environment:<a href="#Prepare-environment" class="wiki-anchor">¶</a></h3>
<pre><code>% cd /tmp/test
% cat vars.json
{
"ARCH" : "i386",
"BACKEND" : "qemu",
"CASEDIR" : "/home/YOURUSER/openqa-devel/repos/os-autoinst/t/data/tests",
"CDMODEL" : "ide-cd",
"HDDMODEL" : "ide-hd",
"HDDSIZEGB" : 10,
"INCLUDE_MODULES" : "none",
"ISO" : "/home/YOURUSER/openqa-devel/repos/os-autoinst/t/data/Core-7.2.iso",
"JOBTOKEN" : "cQIKgSewVq",
"NEEDLES_GIT_HASH" : "67c530841e7a1b5fc90881f02671130a2e92d6af",
"NICMAC" : "52:54:00:12:34:56",
"NICMODEL" : "virtio-net",
"NICTYPE" : "user",
"NICVLAN" : "0",
"NUMDISKS" : 1,
"PRODUCTDIR" : "/home/YOURUSER/openqa-devel/repos/os-autoinst/t/data/tests",
"QEMU" : "i386",
"QEMUCPUS" : 1,
"QEMUPORT" : 15222,
"QEMURAM" : 1024,
"QEMU_APPEND" : "broken option",
"QEMU_COMPRESS_QCOW2" : 1,
"QEMU_DISABLE_SNAPSHOTS" : "1",
"QEMU_NO_FDC_SET" : 1,
"QEMU_NO_KVM" : 1,
"QEMU_NO_TABLET" : 1,
"SCHEDULE" : "tests/noop",
"TEST_GIT_HASH" : "67c530841e7a1b5fc90881f02671130a2e92d6af",
"VERSION" : 1,
"VIRTIO_CONSOLE" : 1,
"VNC" : 90,
"WORKER_INSTANCE" : 3
}
</code></pre>
<a name="Compare-the-following-two-commands"></a>
<h3 >Compare the following two commands:<a href="#Compare-the-following-two-commands" class="wiki-anchor">¶</a></h3>
<pre><code>QEMU_QMP_CONNECT_ATTEMPTS=1 PERL_MYJSONRPC_DEBUG=1 perl /home/YOURUSER/openqa-devel/repos/os-autoinst/isotovideo -d qemu_disable_snapshots=1
QEMU_QMP_CONNECT_ATTEMPTS=1 PERL_MYJSONRPC_DEBUG=1 PERL5OPT="-MDevel::Cover=-select_re,'^/lib',-coverage,statement,-db,cover_db_t" perl /home/YOURUSER/openqa-devel/repos/os-autoinst/isotovideo -d qemu_disable_snapshots=1
</code></pre>
<p>You will see that <code>sending magic and exit</code> is printed twice in the second command (with coverage).<br>
Additionally you will see <code>backend got TERM</code>.</p>
<p>No idea how to debug where that signal comes from.</p>
<p>I still think we should measure coverage only in unit tests, and running the whole isotovideo script as a new process, which itself forks, should be done without coverage enabled.</p>
openQA Project - action #93141: t/18-qemu-options.t fails on Leap 15.2 with coverage enabledhttps://progress.opensuse.org/issues/93141?journal_id=5215672022-05-20T12:30:58Zokurzokurz@suse.com
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Feedback</i></li><li><strong>Assignee</strong> set to <i>okurz</i></li><li><strong>Target version</strong> changed from <i>future</i> to <i>Ready</i></li></ul><p>Both the commands <code>OPENQA_TEST_TIMEOUT_DISABLE=1 PERL5OPT="-MDevel::Cover=-select_re,'^/lib',+ignore_re,lib/perlcritic/Perl/Critic/Policy,-coverage,statement,-db,cover_db_t" prove -l t/18-qemu-options.t</code> and <code>OPENQA_TEST_TIMEOUT_DISABLE=1 make coverage TESTS="t/18-qemu-options.t"</code> work for me so I can't reproduce the original problem.</p>
<p>I am not quite sure I understand your latest statement</p>
<blockquote>
<p>I still think we should measure coverage only in unit tests, and running the whole isotovideo script as a new process, which itself forks, should be done without coverage enabled.</p>
</blockquote>
<p>Can you elaborate?</p>
openQA Project - action #93141: t/18-qemu-options.t fails on Leap 15.2 with coverage enabledhttps://progress.opensuse.org/issues/93141?journal_id=5274742022-06-10T05:53:49Zokurzokurz@suse.com
<ul><li><strong>Status</strong> changed from <i>Feedback</i> to <i>Resolved</i></li></ul><p>AC covered, works for me</p>