<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:50:05 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-38800] fix collection counts in rollback without rebuilding indexes</title>
                <link>https://jira.mongodb.org/browse/SERVER-38800</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Starting in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38769&quot; title=&quot;rollback should not write rollback files or reconcile collection counts for drop-pending idents&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38769&quot;&gt;&lt;del&gt;SERVER-38769&lt;/del&gt;&lt;/a&gt;, rollback would not attempt to &lt;a href=&quot;https://github.com/mongodb/mongo/blob/6216c1f39ca10f148a82cb2b9bba0bd2b61c8793/src/mongo/db/repl/rollback_impl.cpp#L494&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;fix collection counts for drop-pending collections&lt;/a&gt; managed by the storage engine. This is because the drop-pending collection has been removed from the catalog while the underlying ident is kept around for rollback/recovery. The collection counts are eventually fixed coming out of rollback because rollback rebuilds the indexes on drop-pending collections in &lt;a href=&quot;https://github.com/mongodb/mongo/blob/6216c1f39ca10f148a82cb2b9bba0bd2b61c8793/src/mongo/db/catalog/catalog_control.cpp#L160&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;catalog::openCatalog()&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Once &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38548&quot; title=&quot;Leverage the KVDropPendingIdentReaper and TimestampMonitor to make index drops two-phase&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38548&quot;&gt;&lt;del&gt;SERVER-38548&lt;/del&gt;&lt;/a&gt; is completed, dropping indexes will defer the corresponding ident drops in a similar manner to what&apos;s currently done for collections. We should look into an alternate means of reconciling collection counts during rollback if we cannot rely on index rebuilds.&lt;/p&gt;</description>
                <environment></environment>
        <key id="663426">SERVER-38800</key>
            <summary>fix collection counts in rollback without rebuilding indexes</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="benety.goh@mongodb.com">Benety Goh</assignee>
                                    <reporter username="benety.goh@mongodb.com">Benety Goh</reporter>
                        <labels>
                    </labels>
                <created>Mon, 31 Dec 2018 16:34:23 +0000</created>
                <updated>Sun, 29 Oct 2023 22:25:25 +0000</updated>
                            <resolved>Thu, 10 Jan 2019 00:08:41 +0000</resolved>
                                                    <fixVersion>4.1.7</fixVersion>
                                    <component>Storage</component>
                                        <votes>0</votes>
                                    <watches>0</watches>
                                                                                                                <comments>
                            <comment id="2110652" author="xgen-internal-githook" created="Thu, 10 Jan 2019 00:06:47 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: &apos;benety&apos;, &apos;email&apos;: &apos;benety@mongodb.com&apos;, &apos;name&apos;: &apos;Benety Goh&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38800&quot; title=&quot;fix collection counts in rollback without rebuilding indexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38800&quot;&gt;&lt;del&gt;SERVER-38800&lt;/del&gt;&lt;/a&gt; rollback fixes collection counts using o2 fields of drop and rename oplog entries&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/8e5ec90e11d30d476f510929dfeeb2e7d461383e&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/8e5ec90e11d30d476f510929dfeeb2e7d461383e&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2110296" author="xgen-internal-githook" created="Wed, 9 Jan 2019 18:55:02 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: &apos;benety&apos;, &apos;email&apos;: &apos;benety@mongodb.com&apos;, &apos;name&apos;: &apos;Benety Goh&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38800&quot; title=&quot;fix collection counts in rollback without rebuilding indexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38800&quot;&gt;&lt;del&gt;SERVER-38800&lt;/del&gt;&lt;/a&gt; add collection count to o2 field of collection drop and rename oplog entries&lt;/p&gt;

&lt;p&gt;This applies only to the case where the target collection is dropped during the rename&lt;br/&gt;
operation.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/627853bdc19ed147fe5c14e9e458035598c062ea&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/627853bdc19ed147fe5c14e9e458035598c062ea&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2109868" author="xgen-internal-githook" created="Wed, 9 Jan 2019 15:03:19 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: &apos;benety&apos;, &apos;email&apos;: &apos;benety@mongodb.com&apos;, &apos;name&apos;: &apos;Benety Goh&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38800&quot; title=&quot;fix collection counts in rollback without rebuilding indexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38800&quot;&gt;&lt;del&gt;SERVER-38800&lt;/del&gt;&lt;/a&gt; add test cases to rollback_wt_drop.js&lt;/p&gt;

&lt;p&gt;rollback rename with drop target&lt;br/&gt;
collection drop without any CRUD ops to undo&lt;br/&gt;
rollback both creation and drop for the same collection&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/5d0f13334445fca6e2c5bfc496b5d5b1cb7e0f8a&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/5d0f13334445fca6e2c5bfc496b5d5b1cb7e0f8a&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2109710" author="xgen-internal-githook" created="Wed, 9 Jan 2019 13:15:24 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: &apos;benety&apos;, &apos;email&apos;: &apos;benety@mongodb.com&apos;, &apos;name&apos;: &apos;Benety Goh&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38800&quot; title=&quot;fix collection counts in rollback without rebuilding indexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38800&quot;&gt;&lt;del&gt;SERVER-38800&lt;/del&gt;&lt;/a&gt; ReplSetTest.dumpOplog() returns oplog entries in an array after logging the values&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/fca97b04fc5e1ea0e29548f11425845a566fcebe&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/fca97b04fc5e1ea0e29548f11425845a566fcebe&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2109358" author="xgen-internal-githook" created="Tue, 8 Jan 2019 23:55:19 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: &apos;benety&apos;, &apos;email&apos;: &apos;benety@mongodb.com&apos;, &apos;name&apos;: &apos;Benety Goh&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38800&quot; title=&quot;fix collection counts in rollback without rebuilding indexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38800&quot;&gt;&lt;del&gt;SERVER-38800&lt;/del&gt;&lt;/a&gt; OpObserver accepts numRecords for drop and rename operations&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/ecf269ff6494930ae4dfa98f66c4cbd6335cede2&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/ecf269ff6494930ae4dfa98f66c4cbd6335cede2&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2105890" author="xgen-internal-githook" created="Fri, 4 Jan 2019 18:52:31 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: &apos;benety&apos;, &apos;email&apos;: &apos;benety@mongodb.com&apos;, &apos;name&apos;: &apos;Benety Goh&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38800&quot; title=&quot;fix collection counts in rollback without rebuilding indexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38800&quot;&gt;&lt;del&gt;SERVER-38800&lt;/del&gt;&lt;/a&gt; defer ident drop for _id index if storage engine supports drop-pending idents&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/bd209676619a5395f849bd75334aa378527d2181&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/bd209676619a5395f849bd75334aa378527d2181&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2105473" author="xgen-internal-githook" created="Fri, 4 Jan 2019 14:55:31 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;username&apos;: &apos;benety&apos;, &apos;email&apos;: &apos;benety@mongodb.com&apos;, &apos;name&apos;: &apos;Benety Goh&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-38800&quot; title=&quot;fix collection counts in rollback without rebuilding indexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-38800&quot;&gt;&lt;del&gt;SERVER-38800&lt;/del&gt;&lt;/a&gt; rollback falls back on collection scan to reset collection count if drop-pending collection count is not available&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/266891b0d48fd3376c416b4cb66badcf58e5dda4&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/266891b0d48fd3376c416b4cb66badcf58e5dda4&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>7.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_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>Fri, 4 Jan 2019 14:55:31 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        5 years, 5 weeks 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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-1114</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>
                            5 years, 5 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>benety.goh@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|huhuq7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr8fcf:</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="2708">Storage NYC 2019-01-14</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_11861" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>User Summary</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="11856"><![CDATA[Not Needed]]></customfieldvalue>

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

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