<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:16:09 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>[NETCONF-883] Fail to generate API Doc</title>
                <link>https://jira.opendaylight.org/browse/NETCONF-883</link>
                <project id="10142" key="NETCONF">netconf</project>
                    <description>&lt;p&gt;Found in CSIT: &lt;a href=&quot;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/netconf-csit-1node-userfeatures-rfc8040-all-master/94/odl_1/odl1_karaf.log.gz&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/netconf-csit-1node-userfeatures-rfc8040-all-master/94/odl_1/odl1_karaf.log.gz&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;APIDocSerivce fails to generate OpenAPI documentation for &apos;bgp-linkstate&apos;:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;Caused by: java.lang.IllegalArgumentException: Schema tree child  (urn:opendaylight:params:xml:ns:yang:bgp-linkstate?revision=2020-01-20)ipv4-tunnel-sender-address not present in schema parent (urn:opendaylight:params:xml:ns:yang:bgp-linkstate?revision=2020-01-20)address-family
	at org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack.notPresent(SchemaInferenceStack.java:1058) ~[?:?]
	at org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack.lambda$pushSchema$5(SchemaInferenceStack.java:835) ~[?:?]
	at java.util.Optional.orElseThrow(Optional.java:408) ~[?:?]
	at org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack.pushSchema(SchemaInferenceStack.java:835) ~[?:?]
	at org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack.pushSchema(SchemaInferenceStack.java:829) ~[?:?]
	at org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack.pushSchema(SchemaInferenceStack.java:823) ~[?:?]
	at org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack.enterSchemaTree(SchemaInferenceStack.java:496) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processChoiceNode(DefinitionGenerator.java:558) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processChoiceNode(DefinitionGenerator.java:593) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processChildren(DefinitionGenerator.java:514) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processDataNodeContainer(DefinitionGenerator.java:390) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processChildren(DefinitionGenerator.java:501) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processDataNodeContainer(DefinitionGenerator.java:390) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processChoiceNode(DefinitionGenerator.java:581) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processChildren(DefinitionGenerator.java:514) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processDataNodeContainer(DefinitionGenerator.java:390) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processChildren(DefinitionGenerator.java:501) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processDataNodeContainer(DefinitionGenerator.java:390) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.processContainersAndLists(DefinitionGenerator.java:244) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.convertToJsonSchema(DefinitionGenerator.java:153) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.DefinitionGenerator.convertToJsonSchema(DefinitionGenerator.java:171) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.BaseYangSwaggerGenerator.getSwaggerDocSpec(BaseYangSwaggerGenerator.java:310) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.BaseYangSwaggerGenerator.fillDoc(BaseYangSwaggerGenerator.java:196) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.BaseYangSwaggerGenerator.getAllModulesDoc(BaseYangSwaggerGenerator.java:174) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.BaseYangSwaggerGenerator.getAllModulesDoc(BaseYangSwaggerGenerator.java:154) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.AllModulesDocGenerator.getAllModulesDoc(AllModulesDocGenerator.java:34) ~[?:?]
	at org.opendaylight.netconf.sal.rest.doc.impl.ApiDocServiceImpl.getAllModulesDoc(ApiDocServiceImpl.java:67) ~[?:?]
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
        <key id="35837">NETCONF-883</key>
            <summary>Fail to generate API Doc</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.opendaylight.org/images/icons/priorities/major.svg">Medium</priority>
                        <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="10000">Done</resolution>
                                        <assignee username="rkashapov">Ruslan Kashapov</assignee>
                                    <reporter username="sangwookha">Sangwook Ha</reporter>
                        <labels>
                            <label>pt</label>
                            <label>regression</label>
                    </labels>
                <created>Wed, 8 Jun 2022 17:21:10 +0000</created>
                <updated>Wed, 26 Oct 2022 10:35:21 +0000</updated>
                            <resolved>Wed, 26 Oct 2022 10:35:21 +0000</resolved>
                                    <version>3.0.0</version>
                    <version>4.0.0</version>
                    <version>3.0.4</version>
                    <version>4.0.2</version>
                                    <fixVersion>3.0.7</fixVersion>
                    <fixVersion>4.0.3</fixVersion>
                                    <component>restconf-openapi</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="71566" author="rovarga" created="Tue, 25 Oct 2022 11:27:17 +0000"  >&lt;p&gt;The code layout looks quite baroque. There is at least one inconsistency around processing of &apos;choice&apos; and &apos;case&apos; statements &#8211; in one code path we end up pushing cases and in another we do not. There is also a comment FIXME hinting at performing a refactor in one of the methods.&lt;/p&gt;

&lt;p&gt;I think a larger-scale refactor is needed &#8211; preferrably to the point of not using SchemaNodes at all, but rather working on EffectiveStatements.&lt;/p&gt;</comment>
                            <comment id="71567" author="rovarga" created="Tue, 25 Oct 2022 11:30:59 +0000"  >&lt;p&gt;The reproducer is simple:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;feature:install odl-mdsal-apidocs odl-netconf-topology odl-netconf-mdsal odl-restconf odl-bgpcep-bgp
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;and then&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;curl -u admin http://localhost:8181/apidoc/openapi3/apis/single&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;as demonstrated here: &lt;a href=&quot;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/netconf-csit-1node-userfeatures-rfc8040-all-master/173/odl_1/odl1_karaf.log.gz&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/netconf-csit-1node-userfeatures-rfc8040-all-master/173/odl_1/odl1_karaf.log.gz&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10002">
                    <name>Duplicate</name>
                                            <outwardlinks description="duplicates">
                                        <issuelink>
            <issuekey id="35226">NETCONF-859</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="36021">TRNSPRTPCE-680</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="36016">YANGTOOLS-1446</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="36225">YANGTOOLS-1456</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="34444">NETCONF-819</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_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i042iv:</customfieldvalue>

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