<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:32:43 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>[OPNFLWPLUG-528] [GROUP RECONCILIATION]Groups pointing to ports donot reconcile if ports come up late</title>
                <link>https://jira.opendaylight.org/browse/OPNFLWPLUG-528</link>
                <project id="10155" key="OPNFLWPLUG">OpenFlowPlugin</project>
                    <description>&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;In most case we havea broadcast flow whose actions were set to broadcast group ID.&lt;br/&gt;
So the configuration would be a flow --&amp;gt; group --&amp;gt; List&lt;/p&gt;
{port}
&lt;p&gt; (as different actions)&lt;/p&gt;

&lt;p&gt;The group configuration is given below:&lt;/p&gt;

&lt;p&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&amp;gt;&lt;br/&gt;
&amp;lt;group xmlns=&quot;urn:opendaylight:flow:inventory&quot;&amp;gt;&lt;br/&gt;
    &amp;lt;group-type&amp;gt;group-ff&amp;lt;/group-type&amp;gt;&lt;br/&gt;
    &amp;lt;buckets&amp;gt;&lt;br/&gt;
        &amp;lt;bucket&amp;gt;&lt;br/&gt;
			&amp;lt;action&amp;gt;&lt;br/&gt;
				&amp;lt;output-action&amp;gt;&lt;br/&gt;
					&amp;lt;output-node-connector&amp;gt;openflow:1:1&amp;lt;/output-node-connector&amp;gt;&lt;br/&gt;
				&amp;lt;/output-action&amp;gt;&lt;br/&gt;
				&amp;lt;order&amp;gt;2&amp;lt;/order&amp;gt;&lt;br/&gt;
			&amp;lt;/action&amp;gt;&lt;br/&gt;
			&amp;lt;action&amp;gt;&lt;br/&gt;
				&amp;lt;output-action&amp;gt;&lt;br/&gt;
					&amp;lt;output-node-connector&amp;gt;openflow:1:4&amp;lt;/output-node-connector&amp;gt;&lt;br/&gt;
				&amp;lt;/output-action&amp;gt;&lt;br/&gt;
				&amp;lt;order&amp;gt;0&amp;lt;/order&amp;gt;&lt;br/&gt;
			&amp;lt;/action&amp;gt;&lt;br/&gt;
			&amp;lt;action&amp;gt;&lt;br/&gt;
				&amp;lt;output-action&amp;gt;&lt;br/&gt;
					&amp;lt;output-node-connector&amp;gt;openflow:1:3&amp;lt;/output-node-connector&amp;gt;&lt;br/&gt;
				&amp;lt;/output-action&amp;gt;&lt;br/&gt;
				&amp;lt;order&amp;gt;1&amp;lt;/order&amp;gt;&lt;br/&gt;
			&amp;lt;/action&amp;gt;&lt;br/&gt;
		    &amp;lt;action&amp;gt;&lt;br/&gt;
				&amp;lt;output-action&amp;gt;&lt;br/&gt;
					&amp;lt;output-node-connector&amp;gt;openflow:1:5&amp;lt;/output-node-connector&amp;gt;&lt;br/&gt;
				&amp;lt;/output-action&amp;gt;&lt;br/&gt;
				&amp;lt;order&amp;gt;6&amp;lt;/order&amp;gt;&lt;br/&gt;
			&amp;lt;/action&amp;gt;&lt;br/&gt;
			&amp;lt;action&amp;gt;&lt;br/&gt;
				&amp;lt;output-action&amp;gt;&lt;br/&gt;
					&amp;lt;output-node-connector&amp;gt;openflow:1:6&amp;lt;/output-node-connector&amp;gt;&lt;br/&gt;
				&amp;lt;/output-action&amp;gt;&lt;br/&gt;
				&amp;lt;order&amp;gt;7&amp;lt;/order&amp;gt;&lt;br/&gt;
			&amp;lt;/action&amp;gt;&lt;/p&gt;

&lt;p&gt;			&amp;lt;bucket-id&amp;gt;1&amp;lt;/bucket-id&amp;gt;&lt;br/&gt;
			&amp;lt;watch_port&amp;gt;2&amp;lt;/watch_port&amp;gt;&lt;br/&gt;
		&amp;lt;/bucket&amp;gt;&lt;br/&gt;
	&amp;lt;/buckets&amp;gt;   &lt;br/&gt;
    &amp;lt;barrier&amp;gt;false&amp;lt;/barrier&amp;gt;&lt;br/&gt;
    &amp;lt;group-name&amp;gt;Foo7&amp;lt;/group-name&amp;gt;&lt;br/&gt;
    &amp;lt;group-id&amp;gt;7&amp;lt;/group-id&amp;gt;&lt;br/&gt;
&amp;lt;/group&amp;gt;&lt;/p&gt;


&lt;p&gt;Now if when my switch connects with just 1 port, the group mod fails as OFPBAC_BAD_OUT_PORT, but a little later all my ports come up, but the group doesnot reconcile ever.&lt;/p&gt;

&lt;p&gt;Hence this can lead to traffic loss in heavy traffic scenario. Hence marking it as critical&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: Linux&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="27796">OPNFLWPLUG-528</key>
            <summary>[GROUP RECONCILIATION]Groups pointing to ports donot reconcile if ports come up late</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="10000">Done</resolution>
                                        <assignee username="shuva.jyoti.kar.87@gmail.com">Shuva Jyoti Kar</assignee>
                                    <reporter username="shuva.jyoti.kar.87@gmail.com">Shuva Jyoti Kar</reporter>
                        <labels>
                    </labels>
                <created>Thu, 6 Aug 2015 10:50:05 +0000</created>
                <updated>Mon, 27 Sep 2021 09:01:37 +0000</updated>
                            <resolved>Thu, 28 Apr 2016 16:13:02 +0000</resolved>
                                                                    <component>General</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>9</watches>
                                                                                                                <comments>
                            <comment id="57257" author="shuva.jyoti.kar.87@gmail.com" created="Thu, 6 Aug 2015 10:50:05 +0000"  >&lt;p&gt;Attachment Group-outPort-issue.pcap has been added with description: Capture showing the group mod fails&lt;/p&gt;</comment>
                            <comment id="57235" author="mirehak@cisco.com" created="Fri, 7 Aug 2015 08:45:25 +0000"  >&lt;p&gt;Hi Hari,&lt;br/&gt;
why does the port come up later? It there any proposed solution?&lt;/p&gt;</comment>
                            <comment id="57236" author="hariharan_sethuraman@dell.com" created="Fri, 7 Aug 2015 12:05:05 +0000"  >&lt;p&gt;(In reply to michal rehak from comment #1)&lt;br/&gt;
&amp;gt; Hi Hari,&lt;br/&gt;
&amp;gt; why does the port come up later? It there any proposed solution?&lt;/p&gt;

&lt;p&gt;Hi Michal,&lt;/p&gt;

&lt;p&gt;CCd Shuva Jyoti Kar&lt;/p&gt;

&lt;p&gt;Ask seems to be in a pre-provisioning scenario where the group config is applied and port is brought up later.&lt;/p&gt;

&lt;p&gt;Shuva - please confirm if my assumption is correct.&lt;/p&gt;

&lt;p&gt;If we need at the least, the configuration in the config-data-store should be enhanced for pre-provisioning scenarios and notified once the configuration is ready to be applied.&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br/&gt;
Hari&lt;/p&gt;</comment>
                            <comment id="57237" author="muthukumaran.k@ericsson.com" created="Fri, 7 Aug 2015 12:12:37 +0000"  >&lt;p&gt;Yes Hari. What you have mentioned is the exact case - pre-provisioning and/or switch reboot. Ports can come up arbitrarily due to admin-action or due to other differences. So, below mentioned groups can fail.&lt;/p&gt;</comment>
                            <comment id="57238" author="shuva.jyoti.kar.87@gmail.com" created="Fri, 7 Aug 2015 12:20:11 +0000"  >&lt;p&gt;Yes Hari absolutely. Switch reboot/ pre-provisioning&lt;/p&gt;</comment>
                            <comment id="57239" author="hariharan_sethuraman@dell.com" created="Fri, 7 Aug 2015 12:58:44 +0000"  >&lt;p&gt;ok, having pre-provisioning aside, shouldnt the application make sure the reboot and ports are up before configuring the groups? &lt;/p&gt;

&lt;p&gt;Otherwise we need a retrying mechanism for this kind of transaction.&lt;/p&gt;

&lt;p&gt;Michal, please shed your views.&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br/&gt;
Hari&lt;/p&gt;</comment>
                            <comment id="57240" author="shuva.jyoti.kar.87@gmail.com" created="Sat, 8 Aug 2015 04:06:59 +0000"  >&lt;p&gt;The current reconcilitation model is application agnostic -whenever the switch connects it just sends the groups/meters/flows. Either the reconciliation model has to enhanced to make it application-aware or there has to be a retry-mechanism for failed transactions during reconciliation &amp;#8211; could be based on certain triggers or even retry the task after a timeout of t interval for n times(max). The latter will however entail increased usage of the control plane b/w.&lt;/p&gt;</comment>
                            <comment id="57241" author="mirehak@cisco.com" created="Mon, 10 Aug 2015 11:59:23 +0000"  >&lt;p&gt;Hi all,&lt;br/&gt;
we have also &lt;a href=&quot;https://jira.opendaylight.org/browse/OPNFLWPLUG-522&quot; title=&quot;[GROUP RECONCILIATION] Group Chaining fails during reconciliation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;OPNFLWPLUG-522&quot;&gt;&lt;del&gt;OPNFLWPLUG-522&lt;/del&gt;&lt;/a&gt; being caused by ignored precondition for a group too.&lt;/p&gt;

&lt;p&gt;Lets consider timeout and retry based solutions as last emergency and unstable option and focus on defining those preconditions.&lt;/p&gt;

&lt;p&gt;We have:&lt;br/&gt;
1. group depending on other group&lt;br/&gt;
2. group depending on port&lt;/p&gt;

&lt;p&gt;For 1. we can compute dependency tree and push groups in special order with a few barriers in between.&lt;br/&gt;
For 2. we have to wait for port somehow. My first idea is to finish basic reconciliation and setup a one-shot selfdestructive dataChangeEvent listener (pointing to particular node-connector) covering reconciliation of depending groups.&lt;/p&gt;

&lt;p&gt;And I believe that 1. and 2. might need to cooperate. And also the final group push plan with event-driven and dependency-driven order can be fully prepared during base reconciliation.&lt;/p&gt;

&lt;p&gt;We might want to discard those one-shot dataChangeEvent listeners after some timeout but that is just an optimization.&lt;/p&gt;

&lt;p&gt;Does anyone know about some more preconditions for groups?&lt;/p&gt;</comment>
                            <comment id="57242" author="hariharan_sethuraman@dell.com" created="Wed, 12 Aug 2015 05:23:37 +0000"  >&lt;p&gt;Thanks Michal.&lt;/p&gt;

&lt;p&gt;Defining pre-conditions and solving will preclude retry/timeout approaches inherently.&lt;/p&gt;

&lt;p&gt;Preconditions:&lt;br/&gt;
1. group depending on other group&lt;br/&gt;
2. group depending on port&lt;/p&gt;

&lt;p&gt;More I can think off:&lt;br/&gt;
3. Flow depending on group, meter, port?&lt;/p&gt;

&lt;p&gt;Moreover, group referring groups are not supported till OVS &amp;lt; 2.5. I see OVS 2.3.2 is the latest official release. &lt;/p&gt;

&lt;p&gt;Please check:&lt;br/&gt;
&lt;a href=&quot;http://comments.gmane.org/gmane.linux.network.openvswitch.general/9336&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://comments.gmane.org/gmane.linux.network.openvswitch.general/9336&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;----&lt;del&gt;Snipped from openvswitch discussion&lt;/del&gt;----&amp;gt;&lt;br/&gt;
Ben Pfaff | 23 Jun 17:35 2015&lt;br/&gt;
Re: &lt;span class=&quot;error&quot;&gt;&amp;#91;ovs-discuss&amp;#93;&lt;/span&gt; Groups within groups&lt;/p&gt;

&lt;p&gt;On Tue, Jun 23, 2015 at 03:48:38PM +0530, Kavitha_Ramalingham &amp;lt;at&amp;gt; Dell.com wrote:&lt;br/&gt;
&amp;gt; We always see that the traffic is not sent out of the ports described&lt;br/&gt;
&amp;gt; in the flows, when a flow uses a Group ID that in turn uses another&lt;br/&gt;
&amp;gt; group ID in the &quot;actions&quot; qualifier. This appears to be a bug. Can you&lt;br/&gt;
&amp;gt; pl. look into it.&lt;/p&gt;

&lt;p&gt;OpenFlow doesn&apos;t require support of group chaining.  OVS 2.4 and earlier&lt;br/&gt;
don&apos;t support group chaining, but OVS 2.5 will.&lt;/p&gt;</comment>
                            <comment id="57243" author="shuva.jyoti.kar.87@gmail.com" created="Wed, 12 Aug 2015 08:45:22 +0000"  >&lt;p&gt;Hi Hari,&lt;/p&gt;

&lt;p&gt;Yes flows depending on groups can also be considered as a precondition-- but since the current reconciliation model provisions groups ahead of flows and meters  i did not see any issue there.&lt;/p&gt;

&lt;p&gt;However in case you are looking for a switch that supports group-chaining  you can use cpqd for it.&lt;/p&gt;</comment>
                            <comment id="57244" author="hariharan_sethuraman@dell.com" created="Wed, 12 Aug 2015 17:30:29 +0000"  >&lt;p&gt;(In reply to Shuva Jyoti Kar from comment #9)&lt;br/&gt;
&amp;gt; Hi Hari,&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; Yes flows depending on groups can also be considered as a precondition-- but&lt;br/&gt;
&amp;gt; since the current reconciliation model provisions groups ahead of flows and&lt;br/&gt;
&amp;gt; meters  i did not see any issue there.&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; However in case you are looking for a switch that supports group-chaining &lt;br/&gt;
&amp;gt; you can use cpqd for it.&lt;/p&gt;

&lt;p&gt;cpqd supports ovs2.5? I see the version is 2.3 in cpqd page. Could you share the cpqd url with ovs 2.5?&lt;/p&gt;</comment>
                            <comment id="57245" author="shuva.jyoti.kar.87@gmail.com" created="Thu, 13 Aug 2015 04:06:17 +0000"  >&lt;p&gt;Hi Hari,&lt;/p&gt;

&lt;p&gt;I do not understand your question , but cpqd does support group-chaining and group forwarding to ports , hence the suggestion.&lt;/p&gt;</comment>
                            <comment id="57246" author="hariharan_sethuraman@dell.com" created="Thu, 13 Aug 2015 05:13:29 +0000"  >&lt;p&gt;(In reply to Shuva Jyoti Kar from comment #11)&lt;br/&gt;
&amp;gt; Hi Hari,&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; I do not understand your question , but cpqd does support group-chaining and&lt;br/&gt;
&amp;gt; group forwarding to ports , hence the suggestion.&lt;/p&gt;

&lt;p&gt;Will this help me?&lt;br/&gt;
&lt;a href=&quot;https://github.com/CPqD/ofsoftswitch13&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/CPqD/ofsoftswitch13&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="57247" author="shuva.jyoti.kar.87@gmail.com" created="Thu, 13 Aug 2015 05:15:15 +0000"  >&lt;p&gt;For group chaining yes&lt;/p&gt;</comment>
                            <comment id="57248" author="hariharan_sethuraman@dell.com" created="Mon, 14 Sep 2015 06:08:48 +0000"  >&lt;p&gt;Shuva is already working in the reconciliation and working on review comments. Requested him to take this defect and 4069.Setting the owner to default.&lt;/p&gt;</comment>
                            <comment id="57249" author="abhijit2511" created="Fri, 9 Oct 2015 17:37:54 +0000"  >&lt;p&gt;Shuva - any thoughts/updates?&lt;/p&gt;</comment>
                            <comment id="57250" author="shuva.jyoti.kar.87@gmail.com" created="Fri, 9 Oct 2015 17:38:44 +0000"  >&lt;p&gt;Currently working on it&lt;/p&gt;</comment>
                            <comment id="57251" author="shuva.jyoti.kar.87@gmail.com" created="Thu, 5 Nov 2015 07:34:28 +0000"  >&lt;p&gt;Testing the fix ,&lt;br/&gt;
Since the fix involves a config-subsystem parameter, it actually depends on the fix for BUG:4062, that Muthu has raised for a review . Will be waiting till that review is merged , since it needs to be retested post it&lt;/p&gt;</comment>
                            <comment id="57252" author="shuva.jyoti.kar.87@gmail.com" created="Tue, 17 Nov 2015 12:16:00 +0000"  >&lt;p&gt;Review link :&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/29267&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/29267&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="57253" author="abhijit2511" created="Mon, 25 Jan 2016 03:50:06 +0000"  >&lt;p&gt;Shuva,&lt;/p&gt;

&lt;p&gt;Can you fix the path conflicts so that this can be merged? Also can you cherry pick it to stable/beryllium? Anil has already +2&apos;ed the change.&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br/&gt;
Abhijit&lt;/p&gt;</comment>
                            <comment id="57254" author="abhijit2511" created="Sat, 30 Jan 2016 01:29:39 +0000"  >&lt;p&gt;Shuva,&lt;/p&gt;

&lt;p&gt;Can you please rebase it so that it can be merged?&lt;/p&gt;

&lt;p&gt;Abhijit&lt;/p&gt;</comment>
                            <comment id="57255" author="shuva.jyoti.kar.87@gmail.com" created="Sat, 30 Jan 2016 05:01:54 +0000"  >&lt;p&gt;Abhijit,&lt;/p&gt;

&lt;p&gt;Sure will do that at the earliest, some urgent tasks to be brought to closure before i can settle on this. The rebasing is not helping- i will have to re-raise a separate review.&lt;/p&gt;

&lt;p&gt;thanks&lt;/p&gt;</comment>
                            <comment id="57256" author="shuva.jyoti.kar.87@gmail.com" created="Thu, 11 Feb 2016 09:39:03 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/34278/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/34278/&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="14007" name="Group-outPort-issue.pcap" size="133398" author="shuva.jyoti.kar.87@gmail.com" created="Thu, 6 Aug 2015 10:50:05 +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>4099</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=4099]]></customfieldvalue>

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

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