<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:55:48 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>[YANGTOOLS-1313] Error when module is imported with different prefixes</title>
                <link>https://jira.opendaylight.org/browse/YANGTOOLS-1313</link>
                <project id="10188" key="YANGTOOLS">yangtools</project>
                    <description>&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;There are 2 modules, which import 3rd module. Each of them uses different prefix.&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt; openconfig-mpls-types { prefix &lt;span class=&quot;code-quote&quot;&gt;&quot;oc-mplst&quot;&lt;/span&gt;; }
&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt; openconfig-mpls-types { prefix &lt;span class=&quot;code-quote&quot;&gt;&quot;oc-mpls-types&quot;&lt;/span&gt;; }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Code generation fails with following error.&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
Caused by: java.lang.IllegalArgumentException: Multiple entries with same key: QNameModule{ns=http:&lt;span class=&quot;code-comment&quot;&gt;//openconfig.net/yang/mpls-types, rev=2018-11-21}=oc-mplst and QNameModule{ns=http://openconfig.net/yang/mpls-types, rev=2018-11-21}=oc-mpls-types
&lt;/span&gt;    at com.google.common.collect.ImmutableMap.conflictException (ImmutableMap.java:215)
    at com.google.common.collect.ImmutableMap.checkNoConflict (ImmutableMap.java:209)
    at com.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket (RegularImmutableMap.java:146)
    at com.google.common.collect.RegularImmutableMap.fromEntryArray (RegularImmutableMap.java:109)
    at com.google.common.collect.ImmutableMap$Builder.build (ImmutableMap.java:394)
    at org.opendaylight.yangtools.yang.model.export.StatementPrefixResolver.forModule (StatementPrefixResolver.java:120)
    at org.opendaylight.yangtools.yang.model.export.DeclaredStatementFormatter.toYangTextSnippet (DeclaredStatementFormatter.java:51)
    at org.opendaylight.mdsal.binding.java.api.generator.BaseTemplate.appendYangSnippet (BaseTemplate.java:474)
    at org.opendaylight.mdsal.binding.java.api.generator.BaseTemplate.appendSnippet (BaseTemplate.java:442)
    at org.opendaylight.mdsal.binding.java.api.generator.BaseTemplate.formatDataForJavaDoc (BaseTemplate.java:393)
    at org.opendaylight.mdsal.binding.java.api.generator.InterfaceTemplate.body (InterfaceTemplate.java:87)
    at org.opendaylight.mdsal.binding.java.api.generator.BaseTemplate.generate (BaseTemplate.java:103)
    at org.opendaylight.mdsal.binding.java.api.generator.InterfaceGenerator.generate (InterfaceGenerator.java:34)
    at org.opendaylight.mdsal.binding.java.api.generator.GeneratorJavaFile$GeneratorStringSupplier.get (GeneratorJavaFile.java:52)
    at org.opendaylight.mdsal.binding.java.api.generator.GeneratorJavaFile$GeneratorStringSupplier.get (GeneratorJavaFile.java:41)
    at org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl$GenerationTask.generateFile (CodeGeneratorImpl.java:282)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="34324">YANGTOOLS-1313</key>
            <summary>Error when module is imported with different prefixes</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="2" iconUrl="https://jira.opendaylight.org/images/icons/priorities/critical.svg">High</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="dominik.vrbovsky">Dominik Vrbovsk&#253;</assignee>
                                    <reporter username="andmak">Andrej Mak</reporter>
                        <labels>
                            <label>pt</label>
                    </labels>
                <created>Thu, 26 Aug 2021 07:58:51 +0000</created>
                <updated>Wed, 20 Oct 2021 18:17:09 +0000</updated>
                            <resolved>Wed, 20 Oct 2021 18:17:09 +0000</resolved>
                                    <version>6.0.6</version>
                                    <fixVersion>8.0.0</fixVersion>
                    <fixVersion>7.0.9</fixVersion>
                    <fixVersion>6.0.9</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="69535" author="rovarga" created="Thu, 26 Aug 2021 15:53:30 +0000"  >&lt;p&gt;So this needs submodules, actually. The IAE is thrown when two submodules use different prefixes for the same (equal QNameModule) imported module. While we are careful about prefix name conflicts, we then proceed to store a QNameModule-&amp;gt;prefix mapping &#8211; and ImmutableMap.Builder catches the omission.&lt;/p&gt;

&lt;p&gt;I think we need to create an intermediate Multimap&amp;lt;QNameModule, String&amp;gt; index and resolve that before creating the final map, but more investigation is needed.&lt;/p&gt;</comment>
                    </comments>
                    <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|i03z87:</customfieldvalue>

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