<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:27:34 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[ODLPARENT-78] [Karaf 4] SFT never fails, Pax Exam (or our wrappers) swallow all exceptions</title>
                <link>https://jira.opendaylight.org/browse/ODLPARENT-78</link>
                <project id="10149" key="ODLPARENT">odlparent</project>
                    <description>&lt;p&gt;SingleFeatureTest (SFT) under Karaf 4 never actually fails, even if there are exceptions .. Pax Exam, or (more likely perhaps) something&lt;br/&gt;
in that PerRepoTestRunner / PerFeatureRunner wrapper we built, appears to&lt;br/&gt;
swallow ll exceptions thrown by SingleFeatureTest&apos;s @Test installFeature().&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="22201">ODLPARENT-78</key>
            <summary>[Karaf 4] SFT never fails, Pax Exam (or our wrappers) swallow all exceptions</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                                <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10003">Cannot Reproduce</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="vorburger">Michael Vorburger</reporter>
                        <labels>
                    </labels>
                <created>Tue, 14 Mar 2017 18:27:23 +0000</created>
                <updated>Wed, 24 Jan 2018 14:27:05 +0000</updated>
                            <resolved>Fri, 7 Apr 2017 10:39:24 +0000</resolved>
                                                                    <component>General</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="41951" author="vorburger" created="Tue, 14 Mar 2017 18:28:26 +0000"  >&lt;p&gt;For the short term, I&apos;ll add a try { } catch () &lt;/p&gt;
{ LOG.error(); rethrow }
&lt;p&gt; to SFT in &lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/53109/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/53109/&lt;/a&gt; - that will at least let us see exceptions in the log...&lt;/p&gt;</comment>
                            <comment id="41952" author="skitt@redhat.com" created="Fri, 7 Apr 2017 09:17:34 +0000"  >&lt;p&gt;SFT does catch &lt;b&gt;some&lt;/b&gt; errors, see for example &lt;a href=&quot;https://git.opendaylight.org/gerrit/54077&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/54077&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="41953" author="vorburger" created="Fri, 7 Apr 2017 10:39:24 +0000"  >&lt;p&gt;&amp;gt; SFT does catch &lt;b&gt;some&lt;/b&gt; errors&lt;/p&gt;

&lt;p&gt;Yeah, I was wondering were exactly we were at with this, so I&apos;ve just re-tested this properly, now that c/53109 is merged (so with a local odlparent already including that change), by simply locally changing features4-test SingleFeatureTest&apos;s installFeature() method and removing all of its code, so it actually does not install any feature nor call TestBundleDiag anymore - real simple, and tried to just put these 3 failures into it, one after the other:&lt;/p&gt;

&lt;p&gt;public void installFeature() throws Exception {&lt;br/&gt;
    // 1. OK: Assert.fail(&quot;boum!&quot;); // AssertionError extends Error&lt;br/&gt;
    // 2. OK: throw new RuntimeException(&quot;boum!&quot;);&lt;br/&gt;
    // 3. OK: throw new Exception(&quot;boum!&quot;);&lt;br/&gt;
}&lt;/p&gt;

&lt;p&gt;And then tried an e.g. &quot;mvn clean install&quot; this patched features4-test, and then run run &quot;mvn clean package&quot; e.g. in infrautils/common/features/infrautils-features4 - and found that all 3 types do get both logged as as well make mvn fail...&lt;/p&gt;

&lt;p&gt;So... I&apos;m not sure anymore what exactly I had been smoking and observed 3 weeks ago - but it works now (perhaps related to other changes I made in the final version of c/53109 meanwhile?!).&lt;/p&gt;

&lt;p&gt;Or maybe there was something particularly strange happening during the featuresService.installFeature and TestBundleDiag, removed for this simplistic test, but I can&apos;t think of what - ultimately whatever blows up there would just be some sort of, hopefully, propagated, Exception as above...&lt;/p&gt;

&lt;p&gt;Let&apos;s close this; we can re-open if anyone does observe an SFT with exceptions in the log which does not fail the Maven build when it should... NB it will not be able to detect exceptions thrown in background threads in Karaf, or caught and logged but not propagated exceptions; that&apos;s a completely separate problem.  Maybe that&apos;s actually a particular case that some failures run into; Karaf 4 may well have bugs where certain feature installation problems get logged but do not reach us through the FeaturesService and BundleService we use in SFT to determine if everything installed smoothly?&lt;/p&gt;

&lt;p&gt;PPS: My local tests confused the hell out of me due to completely unrelated &lt;a href=&quot;https://jira.opendaylight.org/browse/ODLPARENT-84&quot; title=&quot;Upgrade Pax Exam to solve NoRouteToHostException on Fedora-based Linux due to PAXEXAM-740&quot; class=&quot;issue-link&quot; data-issue-key=&quot;ODLPARENT-84&quot;&gt;&lt;del&gt;ODLPARENT-84&lt;/del&gt;&lt;/a&gt;!&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                            <outwardlinks description="blocks">
                                        <issuelink>
            <issuekey id="22204">ODLPARENT-81</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>7981</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10201" key="com.atlassian.jira.plugin.system.customfieldtypes:url">
                        <customfieldname>External issue URL</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[https://bugs.opendaylight.org/show_bug.cgi?id=7981]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10206" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Issue Type</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10300"><![CDATA[Bug]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10204" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>ODL SR Target Milestone</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10336"><![CDATA[Carbon-RC0]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i02367:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>