<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:09:51 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-45847] Pull the JournalFlusher out of the storage engine layer and place it above the storage engine</title>
                <link>https://jira.mongodb.org/browse/SERVER-45847</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;This requires moving the WiredTigerJournalFlush above the storage layer, and establishing a new code layer &amp;#8211; perhaps StorageControl. This new code layer should have things like all the oplog collection specific code currently splattered across the generic WiredTigerRecordStore class.&lt;/p&gt;
</description>
                <environment></environment>
        <key id="1120695">SERVER-45847</key>
            <summary>Pull the JournalFlusher out of the storage engine layer and place it above the storage engine</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="13201">Fixed</resolution>
                                        <assignee username="dianna.hohensee@mongodb.com">Dianna Hohensee</assignee>
                                    <reporter username="dianna.hohensee@mongodb.com">Dianna Hohensee</reporter>
                        <labels>
                    </labels>
                <created>Wed, 29 Jan 2020 20:31:58 +0000</created>
                <updated>Sun, 29 Oct 2023 22:12:45 +0000</updated>
                            <resolved>Tue, 17 Mar 2020 14:12:50 +0000</resolved>
                                                    <fixVersion>4.7.0</fixVersion>
                    <fixVersion>4.4.5</fixVersion>
                                    <component>Storage</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="3629238" author="xgen-internal-githook" created="Tue, 23 Feb 2021 01:31:06 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Dianna Hohensee&apos;, &apos;email&apos;: &apos;dianna.hohensee@mongodb.com&apos;, &apos;username&apos;: &apos;DiannaHohensee&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-45847&quot; title=&quot;Pull the JournalFlusher out of the storage engine layer and place it above the storage engine&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-45847&quot;&gt;&lt;del&gt;SERVER-45847&lt;/del&gt;&lt;/a&gt; Fix incorrect error code in unit test&lt;br/&gt;
Branch: v4.4&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/d9eb255ba3d295131874b4d4588be133c5026772&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/d9eb255ba3d295131874b4d4588be133c5026772&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3627747" author="xgen-internal-githook" created="Mon, 22 Feb 2021 15:59:32 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Dianna Hohensee&apos;, &apos;email&apos;: &apos;dianna.hohensee@mongodb.com&apos;, &apos;username&apos;: &apos;DiannaHohensee&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-45847&quot; title=&quot;Pull the JournalFlusher out of the storage engine layer and place it above the storage engine&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-45847&quot;&gt;&lt;del&gt;SERVER-45847&lt;/del&gt;&lt;/a&gt; Pull JournalFlusher thread out of WT and place it above the storage engine layer.&lt;/p&gt;

&lt;p&gt;Creating a new storage/control/ directory that contains StorageControl to handle manipulation of&lt;br/&gt;
independent processes performing actions against the storage engine for higher level code layers.&lt;/p&gt;

&lt;p&gt; create mode 100644 src/mongo/db/storage/control/journal_flusher.cpp&lt;br/&gt;
 create mode 100644 src/mongo/db/storage/control/journal_flusher.h&lt;br/&gt;
 create mode 100644 src/mongo/db/storage/control/storage_control.cpp&lt;br/&gt;
 create mode 100644 src/mongo/db/storage/control/storage_control.h&lt;/p&gt;

&lt;p&gt;(cherry picked from commit 6af5a08234f59cd00650a8e3b141a56b6a5ebf14)&lt;br/&gt;
Branch: v4.4&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/0cec2cc63f1279fa75f0867e04cf804bdc7a378e&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/0cec2cc63f1279fa75f0867e04cf804bdc7a378e&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2983070" author="xgen-internal-githook" created="Tue, 17 Mar 2020 14:03:32 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;dianna.hohensee@mongodb.com&apos;, &apos;name&apos;: &apos;Dianna Hohensee&apos;, &apos;username&apos;: &apos;DiannaHohensee&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-45847&quot; title=&quot;Pull the JournalFlusher out of the storage engine layer and place it above the storage engine&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-45847&quot;&gt;&lt;del&gt;SERVER-45847&lt;/del&gt;&lt;/a&gt; Pull JournalFlusher thread out of WT and place it above the storage engine layer.&lt;/p&gt;

&lt;p&gt;Creating a new storage/control/ directory that contains StorageControl to handle manipulation of&lt;br/&gt;
independent processes performing actions against the storage engine for higher level code layers.&lt;/p&gt;

&lt;p&gt; create mode 100644 src/mongo/db/storage/control/journal_flusher.cpp&lt;br/&gt;
 create mode 100644 src/mongo/db/storage/control/journal_flusher.h&lt;br/&gt;
 create mode 100644 src/mongo/db/storage/control/storage_control.cpp&lt;br/&gt;
 create mode 100644 src/mongo/db/storage/control/storage_control.h&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/6af5a08234f59cd00650a8e3b141a56b6a5ebf14&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/6af5a08234f59cd00650a8e3b141a56b6a5ebf14&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2923159" author="dianna.hohensee" created="Mon, 2 Mar 2020 17:17:27 +0000"  >&lt;p&gt;Adding a todo reference in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-46524&quot; title=&quot;ephemeralForTest cannot run new primary oplogTruncateAfterPoint updates because it does not support document level locking&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-46524&quot;&gt;&lt;del&gt;SERVER-46524&lt;/del&gt;&lt;/a&gt; to this task to clean up a temporary hack for which this work will eliminate the need.&lt;/p&gt;</comment>
                            <comment id="2771508" author="dianna.hohensee" created="Wed, 29 Jan 2020 21:33:32 +0000"  >&lt;p&gt;I wonder if we could either eliminate the JournalListener, or at least move it up to wrap around the JournalFlusher&apos;s &amp;#8211; whatever we rename it too &amp;#8211; waitUntilDurable call. This would get the JournalListener out of the WiredTigerSessionCache:waitUntilDurable code.&lt;/p&gt;

&lt;p&gt;Also, it would reduce future risk of racing to set the truncate point in the JournalListener with unsetting it for stepdown.&lt;/p&gt;

&lt;p&gt;(move the journal_listener.h/cpp out of storage/, too)&lt;/p&gt;

&lt;p&gt;Could even make the JournalFlusher (whatever we name it) stop on stepdown and start on stepup: all the other modes call waitUntilDurable manually for new data writes? Might not be 100% accurate.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10420">
                    <name>Backports</name>
                                            <outwardlinks description="backported by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="1269323">SERVER-46826</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1272928">SERVER-46870</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="264698">SERVER-22575</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="1211683">SERVER-46524</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1106823">SERVER-45665</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1306546">SERVER-47385</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1654399">SERVER-55374</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1150801">SERVER-46191</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>Tue, 17 Mar 2020 14:03:32 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        2 years, 50 weeks, 2 days 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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-1643</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>
                            2 years, 50 weeks, 2 days 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>dianna.hohensee@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|hwm64f:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hw7shj:</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_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="3632">Execution Team 2020-03-23</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|hwlsdr:</customfieldvalue>

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