<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:10:56 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-6172] Differences in db.&lt;collection&gt;.drop() and db.&lt;collection&gt;.remove({})</title>
                <link>https://jira.mongodb.org/browse/SERVER-6172</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;We have automated testing that loads data into a given state using mongoimport with json fixture data.  To make sure the database is clean, we have been using --drop on mongo import which I believe to be equivalent to running db.&amp;lt;collection&amp;gt;.drop() prior to the mongoimport.  However, now that we are testing against a sharded mongo deployment, we have changed the test code to do the following:&lt;/p&gt;

&lt;p&gt;sh &quot;#&lt;/p&gt;
{MONGO_BIN}mongo #{DB_HOST}/#{DB_NAME} --quiet --eval \&quot;db.#{collectionName}.remove({})\&quot;&quot;&lt;br/&gt;
sh &quot;#{MONGO_BIN}
&lt;p&gt;mongo #&lt;/p&gt;
{DB_HOST}
&lt;p&gt;/#&lt;/p&gt;
{DB_NAME}
&lt;p&gt; --quiet --eval \&quot;db.adminCommand(&apos;flushRouterConfig&apos;)\&quot;&quot;&lt;/p&gt;

&lt;p&gt;To preserve sharding between test runs.  However, now we see intermittent failures on a piece of code that &apos;stamps&apos; documents based on a given association algorithm and it is returning intermittent results.  It seems that maybe db.&amp;lt;collection&amp;gt;.remove({}) is asynchronous or something like that.  Maybe the algorithm is sensitive to order it gets data from a collection and that .remove({}) followed by an import makes the ordering of the data different?&lt;/p&gt;

&lt;p&gt;Also to note is that we see this behavior on non sharded mongo instances (when developers test on their local dev machine)&lt;/p&gt;

&lt;p&gt;I guess my goal of this JIRA (in the event it is working as designed) is to understand the fundamental differences between .drop() and .remove().&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;</description>
                <environment>Mac OSX 10.7.4&lt;br/&gt;
RHEL 6.1</environment>
        <key id="42134">SERVER-6172</key>
            <summary>Differences in db.&lt;collection&gt;.drop() and db.&lt;collection&gt;.remove({})</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="9">Done</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="jshort@wgen.net">James Short</reporter>
                        <labels>
                    </labels>
                <created>Fri, 22 Jun 2012 16:20:14 +0000</created>
                <updated>Wed, 15 Aug 2012 14:24:12 +0000</updated>
                            <resolved>Fri, 22 Jun 2012 23:50:27 +0000</resolved>
                                    <version>2.0.6</version>
                                                    <component>Sharding</component>
                    <component>Shell</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="135926" author="eliot" created="Fri, 22 Jun 2012 23:50:08 +0000"  >&lt;p&gt;remove( {} ) iterates every document deleting it.&lt;br/&gt;
This can take a while.&lt;/p&gt;

&lt;p&gt;With the code you&apos;re using, its a fire and forget write, so the data might still be there when it returns.&lt;/p&gt;

&lt;p&gt;You should do:&lt;/p&gt;

&lt;p&gt;sh &quot;#&lt;/p&gt;
{MONGO_BIN}
&lt;p&gt;mongo #&lt;/p&gt;
{DB_HOST}
&lt;p&gt;/#&lt;/p&gt;
{DB_NAME}
&lt;p&gt; --quiet --eval \&quot;db.#&lt;/p&gt;
{collectionName}
&lt;p&gt;.remove({}); db.getLastError();\&quot;&quot;&lt;/p&gt;

&lt;p&gt;to block until it finishes.&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>1.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 22 Jun 2012 23:50:08 +0000</customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            11 years, 34 weeks, 5 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10000" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Old_Backport</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10000"><![CDATA[No]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10032" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Operating System</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10021"><![CDATA[OS X]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>eliot</customfieldvalue>
            <customfieldvalue>jshort@wgen.net</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrnz2n:</customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>11088</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|hskl4f:</customfieldvalue>

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