<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:41:02 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-16431] Get rid of the ParallelBatchWriter mutex (aka &quot;peanut-butter&quot; lock)</title>
                <link>https://jira.mongodb.org/browse/SERVER-16431</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;The ParallelBatchWriter lock needs to be acquired by each thread in both standalone and replicated instances. Now that the MMAP V1 journaling is split into global and flush locks, we can get rid of the PBR lock.&lt;/p&gt;

&lt;p&gt;The difference would be that the replication apply log coordinator will take the global lock in X mode before spawning the applier threads. Each applier thread then will not take the global lock (but will still take the flush lock in MMAP V1).&lt;/p&gt;</description>
                <environment></environment>
        <key id="172915">SERVER-16431</key>
            <summary>Get rid of the ParallelBatchWriter mutex (aka &quot;peanut-butter&quot; lock)</summary>
                <type id="3" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14718&amp;avatarType=issuetype">Task</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="9">Done</resolution>
                                        <assignee username="backlog-server-execution">Backlog - Storage Execution Team</assignee>
                                    <reporter username="kaloian.manassiev@mongodb.com">Kaloian Manassiev</reporter>
                        <labels>
                    </labels>
                <created>Fri, 5 Dec 2014 14:33:19 +0000</created>
                <updated>Tue, 6 Dec 2022 04:58:27 +0000</updated>
                            <resolved>Wed, 16 Nov 2016 21:22:23 +0000</resolved>
                                                                    <component>Replication</component>
                    <component>Storage</component>
                                        <votes>0</votes>
                                    <watches>9</watches>
                                                                                                                <comments>
                            <comment id="1436005" author="milkie" created="Wed, 16 Nov 2016 21:22:23 +0000"  >&lt;p&gt;The ParallelBatchWriter is no longer a mutex but is a first class lockable resource.  After conferring with Geert, we agreed that this work is no longer necessary, and that some day when secondary replication logic is replaced, it will go away on its own.&lt;/p&gt;</comment>
                            <comment id="805380" author="xgen-internal-githook" created="Thu, 15 Jan 2015 15:42:15 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Simplify DB profile code&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/02a78a7f3d936813ea9e4195887b11d83448fcd6&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/02a78a7f3d936813ea9e4195887b11d83448fcd6&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="801671" author="xgen-internal-githook" created="Fri, 9 Jan 2015 23:32:09 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;jrassi&apos;, u&apos;name&apos;: u&apos;Jason Rassi&apos;, u&apos;email&apos;: u&apos;rassi@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Remove extraneous space from OpDebug::report() output&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/81109be93d335a4a8a5bca64001c56c41640ba96&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/81109be93d335a4a8a5bca64001c56c41640ba96&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="794821" author="xgen-internal-githook" created="Mon, 29 Dec 2014 20:52:22 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Enable yielding for all storage engines&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/8f83ff2335ea0e2dd0dc2fc79b6509c4f8f2d4fc&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/8f83ff2335ea0e2dd0dc2fc79b6509c4f8f2d4fc&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="790446" author="xgen-internal-githook" created="Thu, 18 Dec 2014 23:12:36 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Sync::shouldRetry should use DB X lock, not global&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/00578e45d13fe73ff51c4ff482d53ce465552752&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/00578e45d13fe73ff51c4ff482d53ce465552752&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="790445" author="xgen-internal-githook" created="Thu, 18 Dec 2014 23:12:35 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Fix compile break with clang&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/eaad2ce5b976995b745907030410218191f82bde&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/eaad2ce5b976995b745907030410218191f82bde&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="789880" author="xgen-internal-githook" created="Thu, 18 Dec 2014 20:06:41 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Move the acquisition of the flush lock to a separate method&lt;/p&gt;

&lt;p&gt;Also adds assertions and new tests. No functional changes yet - this is in&lt;br/&gt;
preparation for removal of the parallel batch writer lock.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/cf0c561330c073bebf63f5246e815ec44f7180db&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/cf0c561330c073bebf63f5246e815ec44f7180db&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="789054" author="xgen-internal-githook" created="Wed, 17 Dec 2014 23:11:00 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: Revert &quot;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Simplify DB profile code&quot;&lt;/p&gt;

&lt;p&gt;This reverts commit c5ebc6be8e3a865655acbc5ecd1cb3b96fdf44ff.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/8d90ce21ffb7fac21fd9f287ce3d66a4c6b576b8&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/8d90ce21ffb7fac21fd9f287ce3d66a4c6b576b8&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="788553" author="xgen-internal-githook" created="Wed, 17 Dec 2014 18:14:58 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Simplify DB profile code&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/c5ebc6be8e3a865655acbc5ecd1cb3b96fdf44ff&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/c5ebc6be8e3a865655acbc5ecd1cb3b96fdf44ff&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="779929" author="xgen-internal-githook" created="Fri, 5 Dec 2014 21:51:38 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Remove recursive() and recursiveCount() from Locker&lt;/p&gt;

&lt;p&gt;Not used anywhere.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/0a3ff55d57b75f75515d44f73d2f8712e24101fc&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/0a3ff55d57b75f75515d44f73d2f8712e24101fc&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="779885" author="xgen-internal-githook" created="Fri, 5 Dec 2014 21:08:31 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;kaloianm&apos;, u&apos;name&apos;: u&apos;Kaloian Manassiev&apos;, u&apos;email&apos;: u&apos;kaloian.manassiev@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-16431&quot; title=&quot;Get rid of the ParallelBatchWriter mutex (aka &amp;quot;peanut-butter&amp;quot; lock)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-16431&quot;&gt;&lt;del&gt;SERVER-16431&lt;/del&gt;&lt;/a&gt; Implement TempRelease in terms of save/restore lock state&lt;/p&gt;

&lt;p&gt;Allows us to get rid of the scoped lock chaining and pass on the&lt;br/&gt;
recursivity tracking to Locker::saveLockState.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/db123c1f4f7f971d4410f735b78d0fd332984477&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/db123c1f4f7f971d4410f735b78d0fd332984477&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="180040">SERVER-16980</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>11.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25136"><![CDATA[Storage Execution]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 5 Dec 2014 21:08:31 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        7 years, 13 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_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>false</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>alexander.golin@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            7 years, 13 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>backlog-server-execution</customfieldvalue>
            <customfieldvalue>milkie@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>kaloian.manassiev@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrlhbj:</customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>151411</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_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|hrkzhr:</customfieldvalue>

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