<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:54:36 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-1067] Clustering : Removing all journal entries from a Followers in-memory journal causes Leader to send an InstallSnapshot</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-1067</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;Let&apos;s say we have a Follower with 5 applied entries in it&apos;s in-memory journal and a snapshot is triggered on the Follower. With the current logic the in-memory journal will be emptied and all the 5 entries will be put into the snapshot.&lt;/p&gt;

&lt;p&gt;If the Leader was to send this Follower a 6th entry the follower will respond with a failure because it will not be able to get to the 5th entry and verify that the term in the 5th entry matches the prevLogTerm of the Leader.&lt;/p&gt;

&lt;p&gt;To fix this problem snapshotting should never clear all the entries from the in-memory journal. Atleast one (or more) entries need to be left there so that a more efficient previous entry comparison can be done.&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="25621">CONTROLLER-1067</key>
            <summary>Clustering : Removing all journal entries from a Followers in-memory journal causes Leader to send an InstallSnapshot</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="moraja@cisco.com">Moiz Raja</assignee>
                                    <reporter username="moraja@cisco.com">Moiz Raja</reporter>
                        <labels>
                    </labels>
                <created>Sat, 13 Dec 2014 04:51:11 +0000</created>
                <updated>Tue, 25 Jul 2023 08:23:50 +0000</updated>
                            <resolved>Wed, 7 Jan 2015 14:26:19 +0000</resolved>
                                                                    <component>mdsal</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="49933" author="moraja@cisco.com" created="Sat, 13 Dec 2014 05:13:42 +0000"  >&lt;p&gt;Similarly if a follower was sent a snapshot with 0 unapplied entries present it is likely that it will require a further InstallSnapshot. Something must be done to prevent this situation as well.&lt;/p&gt;</comment>
                            <comment id="49934" author="kramesha@cisco.com" created="Sat, 13 Dec 2014 05:53:06 +0000"  >&lt;p&gt;Rather than keeping a few entries in the follower journal even after snapshot, we can also check if the AE.previousLogIndex is &amp;lt;= snapshotIndex. If yes, then we can assume that the previous index is part of the snapshot.&lt;/p&gt;

&lt;p&gt;Didnt get the 2nd comment. &lt;br/&gt;
My understanding was that if a snapshot with 0 unapplied entries is applied, the snapshot index is set. In the AppendEntries Reply we do sent the lastIndex() which is the snapshotIndex (if the journal is empty).&lt;br/&gt;
So we should be only getting appendentries, unless i am missing something very obvious.&lt;/p&gt;</comment>
                            <comment id="49935" author="moraja@cisco.com" created="Sat, 13 Dec 2014 16:11:31 +0000"  >&lt;p&gt;To ensure that the log is being replicated in the right order we need to check that,&lt;/p&gt;

&lt;p&gt;AE.prevLogIndex is present in the journal and that the journal.logEntry(prevLogIndex).term == AE.prevLogTerm.&lt;/p&gt;

&lt;p&gt;Just because a certain index is in the snapshot does not confirm that it matches the prev log entry that the leader has.&lt;/p&gt;</comment>
                            <comment id="49936" author="moraja@cisco.com" created="Tue, 6 Jan 2015 16:13:57 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/13675/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/13675/&lt;/a&gt; - master&lt;/p&gt;

&lt;p&gt;To be cherry-picked to helium&lt;/p&gt;</comment>
                            <comment id="49937" author="moraja@cisco.com" created="Tue, 6 Jan 2015 22:33:45 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/13940/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/13940/&lt;/a&gt; - helium&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_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2509</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=2509]]></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="10360"><![CDATA[Helium-2]]></customfieldvalue>

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

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