<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:25: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-51301] Have no-op writes for recording pre/post image documents be a side transaction</title>
                <link>https://jira.mongodb.org/browse/SERVER-51301</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;There are some types of requests that in a single storage transaction write multiple oplog entries. Because each oplog entry sets a different WT timestamp, there&apos;s risk that any data writes correlate with the wrong oplog entry.&lt;/p&gt;

&lt;p&gt;There&apos;s a category of these cases where one of the oplog writes is a no-op write for recording pre/post images that get linked to a following oplog entry. Because the no-op entries themselves do not represent any data writes, it would be safer to write these no-oplog entries in their own storage transaction.&lt;/p&gt;

&lt;p&gt;E.g:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L1032-L1051&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L1032-L1051&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Usages that will go away with &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-59443&quot; title=&quot;Remove storeFindAndModifyImagesInSideCollection=false code paths&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-59443&quot;&gt;&lt;del&gt;SERVER-59443&lt;/del&gt;&lt;/a&gt; and we can omit &quot;fixing&quot;:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L169-L178&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L169-L178&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L182-L190&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L182-L190&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L226-L233&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L226-L233&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="1498400">SERVER-51301</key>
            <summary>Have no-op writes for recording pre/post image documents be a side transaction</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="11262" iconUrl="https://jira.mongodb.org/images/icons/statuses/generic.png" description="">Investigating</status>
                    <statusCategory id="4" key="indeterminate" colorName="inprogress"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="backlog-server-execution">Backlog - Storage Execution Team</assignee>
                                    <reporter username="daniel.gottlieb@mongodb.com">Daniel Gottlieb</reporter>
                        <labels>
                            <label>storex-shortlist</label>
                    </labels>
                <created>Thu, 1 Oct 2020 23:36:53 +0000</created>
                <updated>Tue, 6 Feb 2024 15:24:17 +0000</updated>
                                                            <fixVersion>8.0 Required</fixVersion>
                                    <component>Storage</component>
                                        <votes>0</votes>
                                    <watches>12</watches>
                                                                                                                <comments>
                            <comment id="4192718" author="daniel.gottlieb@10gen.com" created="Tue, 16 Nov 2021 18:28:44 +0000"  >&lt;p&gt;With a lot of work surrounding retryable writes, this ticket has aged poorly. The remaining piece of code has been identified as problematic by the internal transactions project. I&apos;m going to move this ticket into that project with the expectation this will be closed as either:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Won&apos;t do&lt;/li&gt;
	&lt;li&gt;Gone away&lt;/li&gt;
	&lt;li&gt;Duplicate (of some future ticket)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;When the internal transactions project has codified a timestamp story in place, we&apos;ll revisit where we suppress the multi timestamp constraint and determine what&apos;s best to do about them. For now this ticket is just a symbol that the general consensus is that we do want to get rid of these cases.&lt;/p&gt;</comment>
                            <comment id="4039580" author="daniel.gottlieb@10gen.com" created="Fri, 3 Sep 2021 17:50:23 +0000"  >&lt;p&gt;I recently edited the description to scope down this ticket (but I messed up a ticket number describing which cases would go away). I left one bullet point that I think this ticket should address: &lt;a href=&quot;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L1032-L1051&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/blob/fa5aff14111de4fe23ae0094c597673cc4a48d3b/src/mongo/db/op_observer_impl.cpp#L1032-L1051&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="4039170" author="louis.williams" created="Fri, 3 Sep 2021 15:23:57 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=daniel.gottlieb&quot; class=&quot;user-hover&quot; rel=&quot;daniel.gottlieb&quot;&gt;daniel.gottlieb&lt;/a&gt; can you confirm that we no longer need to do this?&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                                        </outwardlinks>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="2378569">SERVER-78482</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10020">
                    <name>Gantt Dependency</name>
                                                                <inwardlinks description="has to be done after">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2378569">SERVER-78482</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2168660">SERVER-70903</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1379500">SERVER-48771</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1855098">SERVER-59443</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8.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_13552" key="com.go2group.jira.plugin.crm:crm_generic_field">
                        <customfieldname>Case</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[[5002K00000xmopFQAQ]]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 23 Mar 2021 21:11:54 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        2 years, 12 weeks, 1 day ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[<s><a href='https://jira.mongodb.org/browse/PM-2213'>PM-2213</a></s>]]></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>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>steven.vannelli@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            2 years, 12 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>backlog-server-execution</customfieldvalue>
            <customfieldvalue>daniel.gottlieb@mongodb.com</customfieldvalue>
            <customfieldvalue>louis.williams@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hy9yk7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr19oo:zv3j</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="4329">Execution Team 2020-12-14</customfieldvalue>
    <customfieldvalue id="4330">Execution Team 2020-12-28</customfieldvalue>
    <customfieldvalue id="4365">Execution Team 2021-01-11</customfieldvalue>
    <customfieldvalue id="4569">Execution Team 2021-03-22</customfieldvalue>
    <customfieldvalue id="5231">Execution Team 2021-10-04</customfieldvalue>
    <customfieldvalue id="5382">Execution Team 2021-10-18</customfieldvalue>
    <customfieldvalue id="5420">Execution Team 2021-11-01</customfieldvalue>
    <customfieldvalue id="5734">Sharding 2022-05-02</customfieldvalue>

                        </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|hy9ktj:</customfieldvalue>

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