<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:07:22 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>[DOCS-13276] Investigate changes in SERVER-31083: Allow passing primary shard to &quot;enableSharding&quot; command for a new database</title>
                <link>https://jira.mongodb.org/browse/DOCS-13276</link>
                <project id="10380" key="DOCS">Documentation</project>
                    <description>&lt;h2&gt;&lt;a name=&quot;Description&quot;&gt;&lt;/a&gt;Description&lt;/h2&gt;

    &lt;div class=&quot;panel&quot; style=&quot;background-color: #c2d2c2;border-width: 1px;&quot;&gt;&lt;div class=&quot;panelHeader&quot; style=&quot;border-bottom-width: 1px;background-color: #239eb0;&quot;&gt;&lt;b&gt;Downstream Change Summary&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;panelContent&quot; style=&quot;background-color: #c2d2c2;&quot;&gt;
&lt;p&gt;    Please document the newly introduced parameter, but include a notice box to warn users that they shouldn&apos;t have to specify it and instead should let the balancer choose the primary shard.&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;&lt;a name=&quot;DescriptionofLinkedTicket&quot;&gt;&lt;/a&gt;Description of Linked Ticket&lt;/h2&gt;
&lt;h3&gt;&lt;a name=&quot;Backgroundandmotivation&quot;&gt;&lt;/a&gt;Background and motivation&lt;/h3&gt;
&lt;p&gt;Both replica set and sharded cluster MongoDB installations support implicit database and collection creation. In a sharded cluster, by default, implicitly created &lt;b&gt;databases&lt;/b&gt; do not support creating sharded collections under them and because of this, sharding provides the &lt;a href=&quot;https://docs.mongodb.com/manual/reference/command/enableSharding/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;enableSharding&lt;/tt&gt;&lt;/a&gt; command, which explicitly creates the database and marks it as permitting sharded collections.&lt;/p&gt;

&lt;p&gt;Currently, both implicitly created databases and those created through &lt;a href=&quot;https://github.com/mongodb/mongo/blob/8b79b65dc042fc8ebb6f4dda2b9a212707e38985/src/mongo/db/s/config/sharding_catalog_manager_database_operations.cpp#L109&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;enableSharding&lt;/tt&gt;&lt;/a&gt; (partially) use the balancer&apos;s &lt;a href=&quot;https://github.com/mongodb/mongo/blob/8b79b65dc042fc8ebb6f4dda2b9a212707e38985/src/mongo/db/s/config/sharding_catalog_manager_shard_operations.cpp#L847&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;statistics gathering logic&lt;/a&gt; to find the shard with the smallest data size and place the database&apos;s primary on it.&lt;/p&gt;

&lt;p&gt;We have seen pathological cases where multiple concurrent implicit database creations end-up placing all database primaries on the same shard. In addition, because the implicit database placement doesn&apos;t use the complete balancer placement logic, it also does not take into account zones, which may lead to database primaries violating location requirements such as GDPR.&lt;/p&gt;

&lt;h3&gt;&lt;a name=&quot;Proposedsolution&quot;&gt;&lt;/a&gt;Proposed solution&lt;/h3&gt;
&lt;p&gt;Expose an optional string parameter called &lt;tt&gt;primaryShard&lt;/tt&gt; on the &lt;a href=&quot;https://github.com/mongodb/mongo/blob/8b79b65dc042fc8ebb6f4dda2b9a212707e38985/src/mongo/s/commands/cluster_enable_sharding_cmd.cpp#L49&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;enableSharding&lt;/tt&gt;&lt;/a&gt; command.&lt;/p&gt;

&lt;p&gt;If this parameter is present, it must contain the id of a valid shard, and the new database&apos;s primary should be placed on that shard. If the database already exists and its current primary is the same as the one specified through &lt;tt&gt;primaryShard&lt;/tt&gt;, the command succeeds. Otherwise, the command should fail with error code &lt;tt&gt;NamespaceExists = 48&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;If the parameter is omitted, the command should behave like it does currently and place the database&apos;s primary on the shard with the currently smallest data size.&lt;/p&gt;


&lt;h2&gt;&lt;a name=&quot;Scopeofchanges&quot;&gt;&lt;/a&gt;Scope of changes&lt;/h2&gt;

&lt;h2&gt;&lt;a name=&quot;ImpacttoOtherDocs&quot;&gt;&lt;/a&gt;Impact to Other Docs&lt;/h2&gt;

&lt;h2&gt;&lt;a name=&quot;MVP%28WorkandDate%29&quot;&gt;&lt;/a&gt;MVP (Work and Date)&lt;/h2&gt;

&lt;h2&gt;&lt;a name=&quot;Resources%28ScopeorDesignDocs%2CInvision%2Cetc.%29&quot;&gt;&lt;/a&gt;Resources (Scope or Design Docs, Invision, etc.)&lt;/h2&gt;
</description>
                <environment></environment>
        <key id="1046454">DOCS-13276</key>
            <summary>Investigate changes in SERVER-31083: Allow passing primary shard to &quot;enableSharding&quot; command for a new database</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="kay.kim@mongodb.com">Kay Kim</assignee>
                                    <reporter username="backlog-server-pm">Backlog - Core Eng Program Management Team</reporter>
                        <labels>
                            <label>docs-sharding</label>
                    </labels>
                <created>Tue, 10 Dec 2019 15:37:50 +0000</created>
                <updated>Mon, 13 Nov 2023 18:12:47 +0000</updated>
                            <resolved>Tue, 17 Dec 2019 13:39:16 +0000</resolved>
                                                    <fixVersion>4.3.1</fixVersion>
                    <fixVersion>4.2.2</fixVersion>
                    <fixVersion>4.0.14</fixVersion>
                    <fixVersion>Server_Docs_20231030</fixVersion>
                    <fixVersion>Server_Docs_20231106</fixVersion>
                    <fixVersion>Server_Docs_20231105</fixVersion>
                    <fixVersion>Server_Docs_20231113</fixVersion>
                                    <component>manual</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="2644178" author="xgen-internal-githook" created="Wed, 18 Dec 2019 19:44:50 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Kay Kim&apos;, &apos;email&apos;: &apos;kay.kim@10gen.com&apos;, &apos;username&apos;: &apos;kay-kim&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/DOCS-13276&quot; title=&quot;Investigate changes in SERVER-31083: Allow passing primary shard to &amp;quot;enableSharding&amp;quot; command for a new database&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DOCS-13276&quot;&gt;&lt;del&gt;DOCS-13276&lt;/del&gt;&lt;/a&gt;: enableSharding and primaryShard&lt;br/&gt;
Branch: v4.0&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/docs/commit/c8ccb0e94e533199f2cb913d303296012fc9cb5f&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/docs/commit/c8ccb0e94e533199f2cb913d303296012fc9cb5f&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2636161" author="xgen-internal-githook" created="Tue, 17 Dec 2019 13:39:11 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Kay Kim&apos;, &apos;email&apos;: &apos;kay.kim@10gen.com&apos;, &apos;username&apos;: &apos;kay-kim&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/DOCS-13276&quot; title=&quot;Investigate changes in SERVER-31083: Allow passing primary shard to &amp;quot;enableSharding&amp;quot; command for a new database&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DOCS-13276&quot;&gt;&lt;del&gt;DOCS-13276&lt;/del&gt;&lt;/a&gt;: enableSharding and primaryShard&lt;br/&gt;
Branch: v4.0.14&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/docs/commit/6ac5939c9547e3edf66a7b65385b6fa9d0ecbd9b&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/docs/commit/6ac5939c9547e3edf66a7b65385b6fa9d0ecbd9b&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2636156" author="xgen-internal-githook" created="Tue, 17 Dec 2019 13:36:32 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Kay Kim&apos;, &apos;email&apos;: &apos;kay.kim@10gen.com&apos;, &apos;username&apos;: &apos;kay-kim&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/DOCS-13276&quot; title=&quot;Investigate changes in SERVER-31083: Allow passing primary shard to &amp;quot;enableSharding&amp;quot; command for a new database&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DOCS-13276&quot;&gt;&lt;del&gt;DOCS-13276&lt;/del&gt;&lt;/a&gt;: enableSharding and primaryShard&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/docs/commit/097a39a8cc93f62558819a9cf6aafd05f2fe3bde&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/docs/commit/097a39a8cc93f62558819a9cf6aafd05f2fe3bde&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10320">
                    <name>Documented</name>
                                            <outwardlinks description="documents">
                                        <issuelink>
            <issuekey id="427218">SERVER-31083</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_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 16 Dec 2019 23:48:36 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        4 years, 8 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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>DOCS-12787</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>emet.ozar@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            4 years, 8 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>backlog-server-pm</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>kay.kim@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hw9svb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hvy0pj:</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_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hw9f4n:</customfieldvalue>

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