<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:54:03 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>[CONTROLLER-855] Error http 500 during PUT into ODL controller-config.</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-855</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;curl -v -f -X PUT -H &quot;Content-Type:application/xml&quot; -H &quot;Accept:application/xml&quot; -d &apos;&amp;lt;modules xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:config&quot;&amp;gt;&amp;lt;module&amp;gt;&amp;lt;name&amp;gt;test14&amp;lt;/name&amp;gt;&amp;lt;/module&amp;gt;&amp;lt;/modules&amp;gt;&apos; &lt;a href=&quot;http://10.195.91.136:8080/restconf/config/opendaylight-inventory:nodes/node/controller-config/yang-ext:mount/config:modules&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://10.195.91.136:8080/restconf/config/opendaylight-inventory:nodes/node/controller-config/yang-ext:mount/config:modules&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;PRODUCES ERROR:&lt;br/&gt;
===============&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Hostname was NOT found in DNS cache&lt;/li&gt;
	&lt;li&gt;Trying 10.195.91.136...&lt;/li&gt;
	&lt;li&gt;Connected to 10.195.91.136 (10.195.91.136) port 8080 (#0)&lt;br/&gt;
&amp;gt; PUT /restconf/config/opendaylight-inventory:nodes/node/controller-config/yang-ext:mount/config:modules HTTP/1.1&lt;br/&gt;
&amp;gt; User-Agent: curl/7.35.0&lt;br/&gt;
&amp;gt; Host: 10.195.91.136:8080&lt;br/&gt;
&amp;gt; Content-Type:application/xml&lt;br/&gt;
&amp;gt; Accept:application/xml&lt;br/&gt;
&amp;gt; Content-Length: 117&lt;br/&gt;
&amp;gt; &lt;/li&gt;
	&lt;li&gt;upload completely sent off: 117 out of 117 bytes&lt;/li&gt;
	&lt;li&gt;The requested URL returned error: 500 Internal Server Error&lt;/li&gt;
	&lt;li&gt;Closing connection 0&lt;br/&gt;
curl: (22) The requested URL returned error: 500 Internal Server Error&lt;/li&gt;
&lt;/ul&gt;



&lt;p&gt;------------------------------------------------------------------------------&lt;br/&gt;
The same error , but in test code is:&lt;br/&gt;
------------------------------------------------------------------------------&lt;br/&gt;
Test_Scenario_PUT14_put_config_modules = {&lt;br/&gt;
    &apos;method&apos;: &apos;PUT&apos;,&lt;br/&gt;
    &apos;uri&apos;: &apos;/config/opendaylight-inventory:nodes/node/controller-config/yang-ext:mount/config:modules&apos;,&lt;br/&gt;
    &apos;headers&apos;: &lt;/p&gt;
{&apos;content-type&apos;: &apos;application/xml&apos;,&apos;accept&apos;: &apos;application/xml&apos;}
&lt;p&gt;,&lt;br/&gt;
    &apos;data&apos;: &apos;&apos;&apos;&lt;br/&gt;
&amp;lt;modules xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:config&quot;&amp;gt;&lt;br/&gt;
  &amp;lt;module&amp;gt;&lt;br/&gt;
    &amp;lt;name&amp;gt;test14&amp;lt;/name&amp;gt;&lt;br/&gt;
  &amp;lt;/module&amp;gt;&lt;br/&gt;
&amp;lt;/modules&amp;gt;&lt;br/&gt;
    &apos;&apos;&apos;,&lt;br/&gt;
    &apos;expected_status&apos;: 204,&lt;br/&gt;
    &apos;expected&apos;: &apos;&apos;&apos;&lt;br/&gt;
    &apos;&apos;&apos;&lt;br/&gt;
}&lt;/p&gt;

&lt;p&gt;------------------------------------------------------------------------------&lt;br/&gt;
Text output of test:&lt;br/&gt;
------------------------------------------------------------------------------&lt;br/&gt;
Test_Scenario_PUT14_put_config_modules                                | FAIL |&lt;br/&gt;
&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;&amp;lt;title&amp;gt;Apache Tomcat/7.0.53 - Error report&amp;lt;/title&amp;gt;&amp;lt;style&amp;gt;&amp;lt;!--H1 &lt;/p&gt;
{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;}
&lt;p&gt; H2 &lt;/p&gt;
{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;}
&lt;p&gt; H3 &lt;/p&gt;
{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;}
&lt;p&gt; BODY &lt;/p&gt;
{font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;}
&lt;p&gt; B &lt;/p&gt;
{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;}
&lt;p&gt; P &lt;/p&gt;
{font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}
&lt;p&gt;A &lt;/p&gt;
{color : black;}
&lt;p&gt;A.name &lt;/p&gt;
{color : black;}
&lt;p&gt;HR &lt;/p&gt;
{color : #525D76;}
&lt;p&gt;--&amp;gt;&amp;lt;/style&amp;gt; &amp;lt;/head&amp;gt;&amp;lt;body&amp;gt;&amp;lt;h1&amp;gt;HTTP Status 500 - RemoteDevice&lt;/p&gt;
{controller-config}: Error while replacing /(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)modules&amp;lt;/h1&amp;gt;&amp;lt;HR size=&quot;1&quot; noshade=&quot;noshade&quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;type&amp;lt;/b&amp;gt; Exception report&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;message&amp;lt;/b&amp;gt; &amp;lt;u&amp;gt;RemoteDevice{controller-config}
&lt;p&gt;: Error while replacing /(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)modules&amp;lt;/u&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;description&amp;lt;/b&amp;gt; &amp;lt;u&amp;gt;The server encountered an internal error that prevented it from fulfilling this request.&amp;lt;/u&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;exception&amp;lt;/b&amp;gt; &amp;lt;pre&amp;gt;java.lang.RuntimeException: RemoteDevice&lt;/p&gt;
{controller-config}: Error while replacing /(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)modules&lt;br/&gt;
        org.opendaylight.controller.sal.connect.netconf.sal.tx.NetconfDeviceWriteOnlyTx.put(NetconfDeviceWriteOnlyTx.java:125)&lt;br/&gt;
    [ Message content over the limit has been removed. ]&lt;br/&gt;
        com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)&lt;br/&gt;
        com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1511)&lt;br/&gt;
        com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1442)&lt;br/&gt;
        com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1391)&lt;br/&gt;
        com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1381)&lt;br/&gt;
        com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)&lt;br/&gt;
        com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:538)&lt;br/&gt;
        com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:716)&lt;br/&gt;
        javax.servlet.http.HttpServlet.service(HttpServlet.java:848)&lt;br/&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;note&amp;lt;/b&amp;gt; &amp;lt;u&amp;gt;The full stack trace of the root cause is available in the Apache Tomcat/7.0.53 logs.&amp;lt;/u&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;HR size=&quot;1&quot; noshade=&quot;noshade&quot;&amp;gt;&amp;lt;h3&amp;gt;Apache Tomcat/7.0.53&amp;lt;/h3&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;: 500 != 204&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
-------------------------------------------------------------------------------&lt;br/&gt;
Content of /opt/opendaylight/logs/opendaylight.log:&lt;br/&gt;
-------------------------------------------------------------------------------&lt;br/&gt;
&lt;br/&gt;
        at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:4.0.23.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at java.lang.Thread.run(Thread.java:744) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
2014-09-17 05:41:09.935 PDT &lt;span class=&quot;error&quot;&gt;&amp;#91;http-bio-8080-exec-4&amp;#93;&lt;/span&gt; WARN  o.o.c.s.c.n.s.t.NetconfDeviceWriteOnlyTx - RemoteDevice{controller-config}
&lt;p&gt;: Error putting data to /(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)modules, data: ImmutableContainerNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)modules, value=[ImmutableMapNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)module, value=[ImmutableMapEntryNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)module[&lt;/p&gt;
{(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)name=test14}
&lt;p&gt;], value=&lt;span class=&quot;error&quot;&gt;&amp;#91;ImmutableLeafNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:controller:config?revision=2013-04-05)name, value=test14, attributes={}}&amp;#93;&lt;/span&gt;, attributes={}}]}], attributes={}}, discarding changes&lt;br/&gt;
java.util.concurrent.ExecutionException: RemoteDevice&lt;/p&gt;
{controller-config}
&lt;p&gt;: Pre-commit rpc failed, request: Node&lt;span class=&quot;error&quot;&gt;&amp;#91;ImmutableCompositeNode&amp;#93;&lt;/span&gt;, qName&lt;span class=&quot;error&quot;&gt;&amp;#91;edit-config&amp;#93;&lt;/span&gt;, modify&lt;span class=&quot;error&quot;&gt;&amp;#91;n/a&amp;#93;&lt;/span&gt;, children.size = 3, errors: [RpcError [message=One element urn:opendaylight:params:xml:ns:yang:controller:config:type expected in XmlElement&lt;/p&gt;
{name=&apos;module&apos;, namespace=&apos;urn:opendaylight:params:xml:ns:yang:controller:config&apos;}
&lt;p&gt; but was 0, severity=ERROR, errorType=APPLICATION, tag=invalid-value, applicationTag=null, info=, cause=null]]&lt;br/&gt;
       at org.opendaylight.controller.sal.connect.netconf.sal.tx.NetconfDeviceWriteOnlyTx.sendEditRpc(NetconfDeviceWriteOnlyTx.java:238) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.sal.connect.netconf.sal.tx.NetconfDeviceWriteOnlyTx.put(NetconfDeviceWriteOnlyTx.java:120) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.sal.connect.netconf.sal.tx.NetconfDeviceReadWriteTx.put(NetconfDeviceReadWriteTx.java:46) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.sal.restconf.impl.BrokerFacade.putDataViaTransaction(BrokerFacade.java:227) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.sal.restconf.impl.BrokerFacade.commitConfigurationDataPut(BrokerFacade.java:115) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: Linux&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="25409">CONTROLLER-855</key>
            <summary>Error http 500 during PUT into ODL controller-config.</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="penemec@cisco.com">Peter NEMEC</reporter>
                        <labels>
                    </labels>
                <created>Thu, 18 Sep 2014 07:19:52 +0000</created>
                <updated>Tue, 25 Jul 2023 08:24:10 +0000</updated>
                            <resolved>Mon, 9 Nov 2015 16:00:14 +0000</resolved>
                                                                    <component>config</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="49247" author="penemec@cisco.com" created="Thu, 18 Sep 2014 07:19:52 +0000"  >&lt;p&gt;Attachment content_of_config_initial.txt has been added with description: configs , 99... is controller-config loopback&lt;/p&gt;</comment>
                            <comment id="49244" author="mmarsale@cisco.com" created="Wed, 24 Sep 2014 09:31:14 +0000"  >&lt;p&gt;Data is invalid so rpc-error is expected. However the response code should not be 500, restconf should handle the response as error and respond with 4xx response code.&lt;/p&gt;</comment>
                            <comment id="49245" author="jgloncak" created="Thu, 25 Sep 2014 09:21:15 +0000"  >&lt;p&gt;Server should response with 4** HTTP errors.&lt;br/&gt;
In this case when PUT operation fails in NetconfDeviceWriteOnlyTx the exception RuntimeException is raised which is probably mapped to HTTP 500 error code.&lt;/p&gt;

&lt;p&gt;In enhancement 1110 it is planned to create common exception for netconf and restconf. Once the same exception will be visible in netconf and restconf then it can be handled in restconf and better HTTP response will be returned.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/browse/NETCONF-4&quot; title=&quot;Unify NetconfDocumentedException with YANGException&quot; class=&quot;issue-link&quot; data-issue-key=&quot;NETCONF-4&quot;&gt;NETCONF-4&lt;/a&gt; was set as blocker.&lt;/p&gt;</comment>
                            <comment id="49246" author="tony.tkacik@gmail.com" created="Mon, 9 Nov 2015 16:00:14 +0000"  >&lt;p&gt;Data were invalid, server error expected.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                                                <inwardlinks description="is blocked by">
                                        <issuelink>
            <issuekey id="21017">NETCONF-4</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="13436" name="content_of_config_initial.txt" size="11370" author="penemec@cisco.com" created="Thu, 18 Sep 2014 07:19:52 +0000"/>
                    </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>1946</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=1946]]></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="10317"><![CDATA[Beryllium]]></customfieldvalue>

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

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