<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:14:47 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-351] Websocket implementation doesn&apos;t support unsubscribe for notifications</title>
                <link>https://jira.opendaylight.org/browse/NETCONF-351</link>
                <project id="10142" key="NETCONF">netconf</project>
                    <description>&lt;p&gt;Current websocket mechanism has support for subscription for notifications but doesn&apos;t support unsubscribe for notifications. &lt;br/&gt;
This is required in re-connection scenarios for example if there is a socket disconnection due to any reason.&lt;br/&gt;
Current behavior of websocket implementation is that on the first connect of the websocket client, all the events present up to that point are sent as a create operation notifications. Subsequent re-connections do not result in notifications for those events. This will cause losing of events during the time of disconnection.&lt;br/&gt;
To insure no event lose client should be able to &quot;unsubscribe&quot; for notifications and then  re-subscribe and in that case all the events will be received again.&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="21364">NETCONF-351</key>
            <summary>Websocket implementation doesn&apos;t support unsubscribe for notifications</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="10003" iconUrl="https://jira.opendaylight.org/images/icons/status_generic.gif" description="">Confirmed</status>
                    <statusCategory id="2" key="new" colorName="blue-gray"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="ritu.sood@intel.com">Ritu Sood</reporter>
                        <labels>
                    </labels>
                <created>Thu, 23 Feb 2017 19:08:31 +0000</created>
                <updated>Mon, 4 May 2020 23:22:34 +0000</updated>
                                                                            <component>restconf-nb</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="39822" author="ivan.hrasko@pantheon.tech" created="Tue, 28 Feb 2017 11:23:15 +0000"  >&lt;p&gt;Do you use this setup &lt;a href=&quot;https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL:Restconf:Change_event_notification_subscription&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL:Restconf:Change_event_notification_subscription&lt;/a&gt; ?&lt;/p&gt;</comment>
                            <comment id="39823" author="rovarga" created="Thu, 1 Jun 2017 20:59:25 +0000"  >&lt;p&gt;What we need to do here is to expose a new RPC to destroy a dynamically created notification stream. The RPC should live in sal-restconf-connector/src/main/yang/opendaylight-md-sal-remote.yang and should tear down the stream and its listener.&lt;/p&gt;</comment>
                            <comment id="39824" author="rovarga" created="Thu, 1 Jun 2017 21:14:04 +0000"  >&lt;p&gt;Another, possibly better alternative is to split the act of defining the notification stream and the act of subscribing the stream.&lt;/p&gt;

&lt;p&gt;From requirements perspective it is completely fine to create-data-change-event-subscription to just set up a blank stream (which does not actually listen for data, but knows that the instance identifier is) and then start a dedicated DataTreeChangeListener when a websocket request to listen comes in &amp;#8211; hence each websocket client will have its own DataTreeChangeListener.&lt;/p&gt;

&lt;p&gt;This also means that such a stream does not have the RFC5277 replaySupport capability (e.g. replaySupport is always false).&lt;/p&gt;

&lt;p&gt;As for lifecycle interactions, if a stream gets destroyed, we want all existing clients to finish delivering their current notification and then disconnect them. This maps to destroying the DataTreeChangeListener once it has finished whatever its current sending to the websocket.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10002">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="21422">NETCONF-409</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </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>7845</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=7845]]></customfieldvalue>

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

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

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