<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:12:15 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>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[SERVER-46722] update StorageTimestampTests TimestampIndexBuilderOnPrimary dbtest test case</title>
                <link>https://jira.mongodb.org/browse/SERVER-46722</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;This test should be updated to test the time stamping logic using a non-applyOps method. It no longer works with applyOps due to &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-41554&quot; title=&quot;Remove applyOps support for createIndexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-41554&quot;&gt;&lt;del&gt;SERVER-41554&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1253953">SERVER-46722</key>
            <summary>update StorageTimestampTests TimestampIndexBuilderOnPrimary dbtest test case</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="13201">Fixed</resolution>
                                        <assignee username="maria.vankeulen@mongodb.com">Maria van Keulen</assignee>
                                    <reporter username="benety.goh@mongodb.com">Benety Goh</reporter>
                        <labels>
                    </labels>
                <created>Mon, 9 Mar 2020 17:49:47 +0000</created>
                <updated>Sun, 29 Oct 2023 22:11:04 +0000</updated>
                            <resolved>Fri, 24 Apr 2020 21:32:12 +0000</resolved>
                                                    <fixVersion>4.4.0-rc7</fixVersion>
                    <fixVersion>4.7.0</fixVersion>
                                    <component>Storage</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="3096395" author="xgen-internal-githook" created="Tue, 19 May 2020 22:40:58 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Maria van Keulen&apos;, &apos;email&apos;: &apos;maria@mongodb.com&apos;, &apos;username&apos;: &apos;mvankeulen94&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-46722&quot; title=&quot;update StorageTimestampTests TimestampIndexBuilderOnPrimary dbtest test case&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-46722&quot;&gt;&lt;del&gt;SERVER-46722&lt;/del&gt;&lt;/a&gt; Update primary createIndex oplog application dbtest&lt;/p&gt;

&lt;p&gt;(cherry picked from commit 2cc8dcf2807a19cffe0d93c857730ec694696abf)&lt;br/&gt;
Branch: v4.4&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/c2be2d5383f8df149b05d13dc5911503b3f8ca82&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/c2be2d5383f8df149b05d13dc5911503b3f8ca82&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3055067" author="xgen-internal-githook" created="Fri, 24 Apr 2020 21:26:56 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Maria van Keulen&apos;, &apos;email&apos;: &apos;maria@mongodb.com&apos;, &apos;username&apos;: &apos;mvankeulen94&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-46722&quot; title=&quot;update StorageTimestampTests TimestampIndexBuilderOnPrimary dbtest test case&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-46722&quot;&gt;&lt;del&gt;SERVER-46722&lt;/del&gt;&lt;/a&gt; Update primary createIndex oplog application dbtest&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/2cc8dcf2807a19cffe0d93c857730ec694696abf&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/2cc8dcf2807a19cffe0d93c857730ec694696abf&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3051320" author="maria.vankeulen" created="Wed, 22 Apr 2020 16:58:32 +0000"  >&lt;p&gt;Thanks for the clarification, Dan.&lt;/p&gt;

&lt;p&gt;It seems that the code path of interest in the test case is oplog application of a &lt;tt&gt;createIndexes&lt;/tt&gt; oplog entry on a primary. My patch will be replacing the applyOps call with a simulation of the oplog application. As a result, the primary must be in a state in which it &lt;a href=&quot;https://github.com/mongodb/mongo/blob/f19d8ba45109afd88165e0e9af9e176f38edba14/src/mongo/db/index_builds_coordinator.cpp#L1367-L1371&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;cannot accept writes&lt;/a&gt;, otherwise it will mistakenly try to create its own oplog entry for the createIndexes command during the oplog application. This also means that the primary &lt;a href=&quot;https://github.com/mongodb/mongo/blob/62b0831c4bd1d2af48aa19622cb62eb73fe7a47d/src/mongo/db/repl/oplog.cpp#L143&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;cannot&lt;/a&gt; build the index in the foreground, since it cannot accept writes, and the oplog application mode is &lt;tt&gt;kSecondary&lt;/tt&gt;. This &lt;a href=&quot;https://github.com/mongodb/mongo/blob/f19d8ba45109afd88165e0e9af9e176f38edba14/src/mongo/dbtests/storage_timestamp_tests.cpp#L2928&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;comment&lt;/a&gt; of the test case of interest will no longer be true as a result.&lt;br/&gt;
 The only other way that the comment would be true for a primary node is if it were applying oplog entries in &lt;a href=&quot;https://github.com/mongodb/mongo/blob/62b0831c4bd1d2af48aa19622cb62eb73fe7a47d/src/mongo/db/repl/oplog.cpp#L129&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;kRecovering&lt;/tt&gt; mode&lt;/a&gt;, which AFAIK is not possible.&lt;/p&gt;

&lt;p&gt;As an update, I was unable to write the test to use the &lt;tt&gt;createIndexes&lt;/tt&gt; oplog entry, due to index build synchronization difficulties. Using the two-phase index build oplog entries instead addresses the synchronization issues and also is consistent with what we expect in practice.&lt;/p&gt;</comment>
                            <comment id="3048404" author="daniel.gottlieb@10gen.com" created="Tue, 21 Apr 2020 01:51:22 +0000"  >&lt;p&gt;The &quot;drain&quot; referenced on &lt;tt&gt;TimestampIndexBuilderOnPrimary&lt;/tt&gt; is a particular phase when nodes step up to become primary. From the replication architecture guide: &lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;At this point, whether catchup was successful or not, the node goes into &quot;drain mode&quot;. This is when the node has already logged &quot;transition to PRIMARY&quot;, but has not yet applied all of the oplog entries in its oplog buffer. replSetGetStatus will now say the node is in PRIMARY state. &lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;The &quot;drain&quot; referenced in &lt;tt&gt;TimestampIndexBuildDrain&lt;/tt&gt; is referring to &lt;a href=&quot;https://github.com/mongodb/mongo/blob/b957b68205fbf672867cf68e30c0744ac5abfb9f/src/mongo/db/catalog/multi_index_block.h#L173-L187&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;draining the concurrent writes&lt;/a&gt; of a hybrid index build.&lt;/p&gt;</comment>
                            <comment id="3048106" author="maria.vankeulen" created="Mon, 20 Apr 2020 20:52:36 +0000"  >&lt;p&gt;I&apos;m wondering if the &lt;a href=&quot;https://github.com/mongodb/mongo/blob/f3595f61ccdaf444ec9acf4567d7e02cacfb05aa/src/mongo/dbtests/storage_timestamp_tests.cpp#L2849-L2857&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;test case&lt;/a&gt; of interest is still necessary after &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-43642&quot; title=&quot;Remove IndexBuilder in favor of IndexBuildsCoordinator&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-43642&quot;&gt;&lt;del&gt;SERVER-43642&lt;/del&gt;&lt;/a&gt;. It looks like we have a &lt;a href=&quot;https://github.com/mongodb/mongo/blob/f3595f61ccdaf444ec9acf4567d7e02cacfb05aa/src/mongo/dbtests/storage_timestamp_tests.cpp#L1972&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;separate test&lt;/a&gt; for timestamping index builds during drain, which was one of the cases mentioned in the &lt;tt&gt;TimestampIndexBuilderOnPrimary&lt;/tt&gt; test.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10420">
                    <name>Backports</name>
                                            <outwardlinks description="backported by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="1367319">SERVER-48510</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1253193">SERVER-46714</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="940084">SERVER-43642</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>5.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_12450" key="com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes">
                        <customfieldname>Backport Requested</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="18953"><![CDATA[v4.4]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10011" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Backwards Compatibility</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10038"><![CDATA[Fully Compatible]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 20 Apr 2020 20:52:36 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        3 years, 38 weeks, 1 day ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_17050" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Downstream Team Attention</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="16941"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            3 years, 38 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>benety.goh@mongodb.com</customfieldvalue>
            <customfieldvalue>daniel.gottlieb@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>maria.vankeulen@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hx55wn:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr64rz:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="3635">Execution Team 2020-05-04</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hx4s5z:</customfieldvalue>

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