<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:07:34 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-4992] Disable dropDatabase command on &quot;config&quot; if sharded collections exist with data</title>
                <link>https://jira.mongodb.org/browse/SERVER-4992</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Disable (return an error) dropping the config db if the chunks/collections indicate there is sharded data across more than one shard. The command can check the shards to make sure that they actually have data first if needed.&lt;/p&gt;</description>
                <environment></environment>
        <key id="30836">SERVER-4992</key>
            <summary>Disable dropDatabase command on &quot;config&quot; if sharded collections exist with data</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="9">Done</resolution>
                                        <assignee username="siddharth.singh@10gen.com">siddharth.singh@10gen.com</assignee>
                                    <reporter username="scotthernandez">Scott Hernandez</reporter>
                        <labels>
                            <label>dropDatabase</label>
                            <label>mongos</label>
                    </labels>
                <created>Thu, 16 Feb 2012 22:28:18 +0000</created>
                <updated>Mon, 11 Jul 2016 18:32:56 +0000</updated>
                            <resolved>Fri, 1 Jun 2012 16:39:13 +0000</resolved>
                                                    <fixVersion>2.0.7</fixVersion>
                    <fixVersion>2.1.2</fixVersion>
                                    <component>Sharding</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="139190" author="auto" created="Tue, 3 Jul 2012 18:07:30 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;date&apos;: u&apos;2012-05-30T07:35:16-07:00&apos;, u&apos;name&apos;: u&apos;Siddharth Singh&apos;, u&apos;email&apos;: u&apos;singhsiddharth@gmail.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-4992&quot; title=&quot;Disable dropDatabase command on &amp;quot;config&amp;quot; if sharded collections exist with data&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-4992&quot;&gt;&lt;del&gt;SERVER-4992&lt;/del&gt;&lt;/a&gt; Disable dropDatabase command on config&lt;/p&gt;

&lt;p&gt;i) Diallow completely via mongos&lt;br/&gt;
ii) And partially if mongod started with --configsvr&lt;/p&gt;

&lt;p&gt;Signed-off-by: Eric Milkie &amp;lt;milkie@10gen.com&amp;gt;&lt;br/&gt;
Branch: v2.0&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/e25d6a41652eaebd1395582261e3c83718d10274&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/e25d6a41652eaebd1395582261e3c83718d10274&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="124514" author="auto" created="Wed, 30 May 2012 20:14:35 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;login&apos;: u&apos;singhsiddharth&apos;, u&apos;name&apos;: u&apos;Siddharth Singh&apos;, u&apos;email&apos;: u&apos;singhsiddharth@gmail.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-4992&quot; title=&quot;Disable dropDatabase command on &amp;quot;config&amp;quot; if sharded collections exist with data&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-4992&quot;&gt;&lt;del&gt;SERVER-4992&lt;/del&gt;&lt;/a&gt; Disable dropDatabase command on config&lt;/p&gt;

&lt;p&gt;i) Diallow completely via mongos&lt;br/&gt;
ii) And partially if mongod started with --configsvr&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/eef1039951718a1337967a373d5abecfaff47877&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/eef1039951718a1337967a373d5abecfaff47877&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="95543" author="siddharth.singh@10gen.com" created="Mon, 5 Mar 2012 21:54:03 +0000"  >&lt;p&gt;This broke the dumprestore test (&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-5210&quot; title=&quot;config database not restored during dumprestore9.js test&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-5210&quot;&gt;&lt;del&gt;SERVER-5210&lt;/del&gt;&lt;/a&gt;). mongorestore, before restoring config db, tries to drop it first which this commit wasn&apos;t allowing. We should probably have some sought of force flag that would still allow config to be dropped via mongos. What do you think ?&lt;/p&gt;</comment>
                            <comment id="95511" author="auto" created="Mon, 5 Mar 2012 21:03:18 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;login&apos;: u&apos;singhsiddharth&apos;, u&apos;name&apos;: u&apos;Siddharth Singh&apos;, u&apos;email&apos;: u&apos;singhsiddharth@gmail.com&apos;}
&lt;p&gt;Message: Revert &quot;&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-4992&quot; title=&quot;Disable dropDatabase command on &amp;quot;config&amp;quot; if sharded collections exist with data&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-4992&quot;&gt;&lt;del&gt;SERVER-4992&lt;/del&gt;&lt;/a&gt; disabled dropDatabase on &quot;config&quot; via mongos and via mongod, if started with --configsvr&quot;&lt;/p&gt;

&lt;p&gt;Broke the dumprestore.js test (&lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-5210&quot; title=&quot;config database not restored during dumprestore9.js test&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-5210&quot;&gt;&lt;del&gt;SERVER-5210&lt;/del&gt;&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;This reverts commit 255e03216d3e75814b9f744fd27dccf93ff81611.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/3dc9191947727193a423d19b47c56ec4dd31feec&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/3dc9191947727193a423d19b47c56ec4dd31feec&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="95408" author="auto" created="Mon, 5 Mar 2012 18:25:06 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;login&apos;: u&apos;singhsiddharth&apos;, u&apos;name&apos;: u&apos;Siddharth Singh&apos;, u&apos;email&apos;: u&apos;singhsiddharth@gmail.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-4992&quot; title=&quot;Disable dropDatabase command on &amp;quot;config&amp;quot; if sharded collections exist with data&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-4992&quot;&gt;&lt;del&gt;SERVER-4992&lt;/del&gt;&lt;/a&gt; disabled dropDatabase on &quot;config&quot; via mongos and via mongod, if started with --configsvr&lt;/p&gt;

&lt;p&gt;i)  dropDatabase on &quot;config&quot; should be disallowed on mongos&lt;br/&gt;
ii) dropDatabase on &quot;config&quot; should be disallowed if mongodb started with --configsvr&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/255e03216d3e75814b9f744fd27dccf93ff81611&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/255e03216d3e75814b9f744fd27dccf93ff81611&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="93966" author="siddharth.singh@10gen.com" created="Wed, 29 Feb 2012 23:30:29 +0000"  >&lt;p&gt;Code review url: &lt;a href=&quot;http://codereview.10gen.com/7480001/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://codereview.10gen.com/7480001/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="93650" author="eliot" created="Wed, 29 Feb 2012 04:52:33 +0000"  >&lt;p&gt;The 2 things we should do are:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;on mongos, dropDatabase on &quot;config&quot; should be disallowed&lt;/li&gt;
	&lt;li&gt;on mongod, dropDatabase on &quot;config&quot; should be disallowed if started with --configsvr&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="93380" author="siddharth.singh@10gen.com" created="Tue, 28 Feb 2012 15:43:17 +0000"  >&lt;p&gt;As of now I have implemented a very simple name check logic, that is if  the name of  the db being dropped is &apos;config&apos; it will return an error. The safe way to implement additional logic of finding out if collection has data and if it is sharded across more than one shard will require grabbing the distributed namespace lock and then iterating over the collections to find those additional details. This potentially could be time consuming plus the added complexity in the code. If our only intention is to avoid accidental config db deletions from mongos or from a configsvr the simple name check logic is enough. Let me know your thoughts on this.&lt;/p&gt;</comment>
                            <comment id="89296" author="eliot" created="Fri, 17 Feb 2012 01:25:28 +0000"  >&lt;p&gt;we can disallow completely via mongos and partially if started with --configsvr&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="22264">TOOLS-111</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9.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, 17 Feb 2012 01:25:28 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        11 years, 33 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/TOOLS-111'>TOOLS-111</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>ramon.fernandez@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            11 years, 33 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>auto</customfieldvalue>
            <customfieldvalue>eliot</customfieldvalue>
            <customfieldvalue>scotthernandez</customfieldvalue>
            <customfieldvalue>siddharth.singh@10gen.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrod5z:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hrg6on:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>7987</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_10166" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Tests Written</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10154"><![CDATA[Complete]]></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|hsxllz:</customfieldvalue>

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