<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:44:42 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-37000] Transactions tests that have knowledge of prepare machinery should live in jstests/core/txns/prepare, which should be blacklisted from sharding suites</title>
                <link>https://jira.mongodb.org/browse/SERVER-37000</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;The &lt;tt&gt;jstests/core/txns&lt;/tt&gt; directory is intended to contain transactions tests that are &lt;a href=&quot;https://github.com/mongodb/mongo/blob/4695b6b675a4c8dd217635afb8f8e907da5fd7be/buildscripts/resmokeconfig/suites/sharded_core_txns.yml#L1-L3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;topology agnostic&lt;/a&gt; i.e. tests that would generalize from a single replica set to a sharded cluster. Tests that run &apos;prepareTransaction&apos; are not topology agnostic i.e. they depend on the fact that they are run against a single replica set, not a mongos. As a consequence of this, any test that runs prepareTransaction and is placed inside &lt;tt&gt;jstests/core/txns&lt;/tt&gt; must then be blacklisted from any sharded transaction suite, e.g. &lt;tt&gt;sharded_core_txns&lt;/tt&gt;. This blacklisting effort is unnecessary since we would never intend to run these tests in sharded passthroughs since the functionality they test is specific to single replica sets. Placing them in &lt;tt&gt;jstests/replsets&lt;/tt&gt; obviates the need to do any blacklisting. Ideally we would move all existing &quot;prepare&quot; tests in &lt;tt&gt;jstests/core/txns&lt;/tt&gt; into &lt;tt&gt;jstests/replsets&lt;/tt&gt;.&lt;/p&gt;</description>
                <environment></environment>
        <key id="599902">SERVER-37000</key>
            <summary>Transactions tests that have knowledge of prepare machinery should live in jstests/core/txns/prepare, which should be blacklisted from sharding suites</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="2">Won&apos;t Fix</resolution>
                                        <assignee username="backlog-server-repl">Backlog - Replication Team</assignee>
                                    <reporter username="william.schultz@mongodb.com">William Schultz</reporter>
                        <labels>
                            <label>prepare_optional</label>
                            <label>prepare_testing</label>
                    </labels>
                <created>Wed, 5 Sep 2018 18:35:12 +0000</created>
                <updated>Tue, 6 Dec 2022 03:18:59 +0000</updated>
                            <resolved>Fri, 17 May 2019 19:02:39 +0000</resolved>
                                                                    <component>Replication</component>
                                        <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="2250944" author="greg.mckeon" created="Fri, 17 May 2019 19:02:39 +0000"  >&lt;p&gt;Given that we now have tags, we won&apos;t do this.&lt;/p&gt;</comment>
                            <comment id="1994260" author="william.schultz" created="Wed, 5 Sep 2018 19:06:02 +0000"  >&lt;p&gt;I think I perceive &quot;core&quot; tests differently. I think of them as being the most generic tests of the database we have i.e. ones that exercise features common to any database configuration or topology. For example, &quot;can I insert a document and read it back&quot;. Or, similarly, testing any standard MongoDB CRUD operation. Originally, I perceived transactions as (eventually) being one of the core database features. I acknowledge that there may be certain &quot;core&quot; features that are not fully generic (e.g. don&apos;t work in a sharded cluster), but my intuition is that &lt;em&gt;most&lt;/em&gt; tests that get added to the &quot;core&quot; suite do not require special blacklisting. That is, needing to blacklist a core test from a particular suite is the exception, not the rule. &lt;/p&gt;

&lt;p&gt;I see your point about the prepare tests running in any suite, though. (I&apos;m assuming that you would be thinking about initial sync passthroughs, as one example). I think making a sub-directory that is prepare specific and excluding that directory by default from any non-replica set transactions suites may be a good solution. We could perhaps then view &apos;prepare&apos; as a &quot;core&quot; replica set feature i.e. something that should work correctly in any replica set, letting all other configuration parameters vary.&lt;/p&gt;</comment>
                            <comment id="1994240" author="judah.schvimer" created="Wed, 5 Sep 2018 18:40:43 +0000"  >&lt;p&gt;I personally think of &apos;core&apos; tests as being less topology-agnostic and moreso topology-constant. They do not change the topology, but there are some that they may not apply to (and so we blacklist them).&lt;/p&gt;</comment>
                            <comment id="1994235" author="judah.schvimer" created="Wed, 5 Sep 2018 18:39:21 +0000"  >&lt;p&gt;I would lean towards a jstests/core/txns/prepare/ directory potentially. The benefit of having them where they are is that they will be run in any suites that run with a single replica set, which will be useful once we make prepared transactions recoverable.&lt;/p&gt;</comment>
                            <comment id="1994234" author="william.schultz" created="Wed, 5 Sep 2018 18:38:00 +0000"  >&lt;p&gt;I recognize that there may already be some other tests in &lt;tt&gt;jstests/core/txns&lt;/tt&gt; that do not abide by the &quot;topology agnostic&quot; rule (e.g. see the blacklist in &lt;tt&gt;sharded_core_txns&lt;/tt&gt;), but the prepare related tests are certainly a large portion of these.&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>5.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25128"><![CDATA[Replication]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 5 Sep 2018 18:39:21 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        4 years, 38 weeks, 5 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_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>alexander.golin@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            4 years, 38 weeks, 5 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>backlog-server-repl</customfieldvalue>
            <customfieldvalue>greg.mckeon@mongodb.com</customfieldvalue>
            <customfieldvalue>judah.schvimer@mongodb.com</customfieldvalue>
            <customfieldvalue>william.schultz@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hu77an:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|htxpb3:</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_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|hu6tjz:</customfieldvalue>

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