<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:32:39 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-33207] geo_borders.js fails in 2 shards sharded collections passthrough</title>
                <link>https://jira.mongodb.org/browse/SERVER-33207</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;The index build at &lt;a href=&quot;https://github.com/mongodb/mongo/blob/625c1136/jstests/core/geo_borders.js#L24&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;geo_borders.js:24&lt;/a&gt;, which is expected to fail, may fail on only one of the shards. This can happen by chance if the out-of-bounds points that cause the failure all get assigned to the same shard, leaving one shard that has no illegal points.&lt;/p&gt;</description>
                <environment></environment>
        <key id="495427">SERVER-33207</key>
            <summary>geo_borders.js fails in 2 shards sharded collections passthrough</summary>
                <type id="1" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14703&amp;avatarType=issuetype">Bug</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="david.storch@mongodb.com">David Storch</assignee>
                                    <reporter username="charlie.swanson@mongodb.com">Charlie Swanson</reporter>
                        <labels>
                    </labels>
                <created>Thu, 8 Feb 2018 22:50:34 +0000</created>
                <updated>Sun, 29 Oct 2023 22:34:57 +0000</updated>
                            <resolved>Mon, 12 Feb 2018 19:00:44 +0000</resolved>
                                                    <fixVersion>3.7.2</fixVersion>
                                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="1803247" author="max.hirschhorn@10gen.com" created="Mon, 12 Feb 2018 19:19:06 +0000"  >&lt;blockquote&gt;
&lt;p&gt;It sounds like we&apos;re converging on leaving the sharded passthrough testing as is, i.e. not adding a new single-shard jsCore passthrough suite. Max Hirschhorn Charlie Swanson, can we consider this thread closed?&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Sounds good to me.&lt;/p&gt;</comment>
                            <comment id="1803243" author="charlie.swanson" created="Mon, 12 Feb 2018 19:17:42 +0000"  >&lt;p&gt;Yep. I&apos;m on the same page - I don&apos;t see a reason to add another passthrough suite.&lt;/p&gt;</comment>
                            <comment id="1803230" author="david.storch" created="Mon, 12 Feb 2018 19:10:45 +0000"  >&lt;blockquote&gt;
&lt;p&gt;I&apos;ll reaffirm that I still don&apos;t know much about the codepath for these commands in mongos very well, and would defer to either of you or the Sharding team on whether it seems likely that the routing logic could have a bug in the single-shard vs unsharded case.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I think it&apos;s unlikely that, aside from the aggregation system, there would be a routing bug that manifests in the single-shard case, but not the multi-shard or unsharded cases.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The failure observed with the geo_borders.js test seems to me more of an issue that our JavaScript tests make assertions that depend on the chunk distribution among the shards.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I&apos;m not sure I&apos;d characterize it that way. In my view, the problem is that the index build behavior presented to a client for the sharded case does not match the behavior presented to a client in the standalone case. The sharding team needs to do additional work in order to make failed index builds clean up properly in a sharded cluster in the way that they do on a standalone. In a way, this is much like having to blacklist a test for command &lt;em&gt;x&lt;/em&gt; from the sharded collections passthrough because it does not function correctly against a sharded collection.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Is there a better way we could detect these kinds of JavaScript tests without waiting for them to sometimes fail in the future?&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I guess we could audit tests in &lt;tt&gt;jstests/core/&lt;/tt&gt; looking for those that make assertions about failed index builds? I would propose holding off on such an audit unless we start seeing more failures like this one, however.&lt;/p&gt;

&lt;p&gt;It sounds like we&apos;re converging on leaving the sharded passthrough testing as is, i.e. &lt;em&gt;not&lt;/em&gt; adding a new single-shard jsCore passthrough suite. &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=max.hirschhorn&quot; class=&quot;user-hover&quot; rel=&quot;max.hirschhorn&quot;&gt;max.hirschhorn&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=charlie.swanson&quot; class=&quot;user-hover&quot; rel=&quot;charlie.swanson&quot;&gt;charlie.swanson&lt;/a&gt;, can we consider this thread closed?&lt;/p&gt;</comment>
                            <comment id="1803212" author="xgen-internal-githook" created="Mon, 12 Feb 2018 18:59:57 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;david.storch@10gen.com&apos;, &apos;name&apos;: &apos;David Storch&apos;, &apos;username&apos;: &apos;dstorch&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-33207&quot; title=&quot;geo_borders.js fails in 2 shards sharded collections passthrough&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-33207&quot;&gt;&lt;del&gt;SERVER-33207&lt;/del&gt;&lt;/a&gt; Blacklist geo_borders.js from sharded_collections_jscore_passthrough.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/fe1587bfc8e3507eb044721a0fa98c456659b629&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/fe1587bfc8e3507eb044721a0fa98c456659b629&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1803063" author="max.hirschhorn@10gen.com" created="Mon, 12 Feb 2018 17:23:41 +0000"  >&lt;blockquote&gt;
&lt;p&gt;&amp;gt; 2. What&apos;s your opinion on whether we should maintain multiple jsCore passthroughs with sharded collections, as I describe above?&lt;/p&gt;

&lt;p&gt;I&apos;m not aware of commands such as &quot;find&quot; and &quot;count&quot; have special logic for when they target a single shard, so I think until we add anything like that it&apos;d be fine to change &lt;tt&gt;sharded_collections_jscore_passthrough.yml&lt;/tt&gt; to have &amp;gt;1 shards and not add any new test suites for running jsCore tests against a sharded cluster.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-31785?focusedCommentId=1761459&amp;amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-1761459&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.mongodb.org/browse/SERVER-31785?focusedCommentId=1761459&amp;amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-1761459&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I&apos;ll reaffirm that I still don&apos;t know much about the codepath for these commands in mongos very well, and would defer to either of you or the Sharding team on whether it seems likely that the routing logic could have a bug in the single-shard vs unsharded case. The failure observed with the &lt;tt&gt;geo_borders.js&lt;/tt&gt; test seems to me more of an issue that our JavaScript tests make assertions that depend on the chunk distribution among the shards. (Prior to the changes from &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-30344&quot; title=&quot;prevent shards from implicitly creating a collection on createIndexes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-30344&quot;&gt;&lt;del&gt;SERVER-30344&lt;/del&gt;&lt;/a&gt;, we would have creating the index on all shards, even if they didn&apos;t own any data for the collection.) Is there a better way we could detect these kinds of JavaScript tests without waiting for them to sometimes fail in the future? It feels to me like an issue on the same level as our JavaScript tests depend on an implicit ordering of documents when not specifying a sort.&lt;/p&gt;</comment>
                            <comment id="1801329" author="charlie.swanson" created="Fri, 9 Feb 2018 19:36:39 +0000"  >&lt;p&gt;Would you care to make an argument? This failure doesn&apos;t convince me that we&apos;re missing coverage. To me, this looks like a success of replacing that suite, since we figured out something that does not work when the collection is sharded, but does when it&apos;s unsharded. I don&apos;t think there&apos;s much value in providing guarantees/coverage of things that work when your collection is sharded but only lives on one shard? That describes the unsharded configuration?&lt;/p&gt;

&lt;p&gt;I think a motivation for a suite with one shard would look different. A bug that only manifested when all the data lived on a single shard, but worked fine in two shards would be more motivating. &lt;/p&gt;</comment>
                            <comment id="1801075" author="david.storch" created="Fri, 9 Feb 2018 17:47:53 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=charlie.swanson&quot; class=&quot;user-hover&quot; rel=&quot;charlie.swanson&quot;&gt;charlie.swanson&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=max.hirschhorn&quot; class=&quot;user-hover&quot; rel=&quot;max.hirschhorn&quot;&gt;max.hirschhorn&lt;/a&gt;, my planned fix is to blacklist geo_borders.js from the &lt;tt&gt;sharded_collections_jscore_passthrough&lt;/tt&gt; suite. This makes me wonder whether or not it would be wise to reintroduce a variant of &lt;tt&gt;sharded_collections_jscore_passthrough&lt;/tt&gt; that uses a single shard (in other words, a jsCore variant of &lt;tt&gt;aggregation_one_shard_sharded_collections&lt;/tt&gt;). Do we still believe that this wouldn&apos;t add valuable coverage beyond &lt;tt&gt;sharding_jscore_passthrough&lt;/tt&gt;?&lt;/p&gt;</comment>
                            <comment id="1800983" author="david.storch" created="Fri, 9 Feb 2018 16:55:24 +0000"  >&lt;p&gt;I spoke with &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=kaloian.manassiev&quot; class=&quot;user-hover&quot; rel=&quot;kaloian.manassiev&quot;&gt;kaloian.manassiev&lt;/a&gt;, and he confirmed that this falls within a known category of issues where we don&apos;t clean up properly on failure. Many related improvements are planned as future work. For now, we should change our testing to work around the problem.&lt;/p&gt;

&lt;p&gt;Since the sharded_collections_jscore_passthrough implicitly shards by {_id: &quot;hashed&quot;}, there isn&apos;t a good way to guarantee that both shards have an invalid out-of-bounds point.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.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, 9 Feb 2018 16:55:24 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        6 years, 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_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>
                            6 years, 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_10032" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Operating System</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10026"><![CDATA[ALL]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>charlie.swanson@mongodb.com</customfieldvalue>
            <customfieldvalue>david.storch@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>max.hirschhorn@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|htpziv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hthh2v:</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="2117">Query 2018-02-12</customfieldvalue>
    <customfieldvalue id="2120">Query 2018-02-26</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|htplnz:</customfieldvalue>

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