<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:15:36 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-27590] Duplicate documents in multiple shards</title>
                <link>https://jira.mongodb.org/browse/SERVER-27590</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;We have a sharded collection with hashed index on &quot;_id&quot; as the key. We started with 2 shards and added one more.&lt;/p&gt;

&lt;p&gt;However we are finding duplicate objects with the same _id on both shard-0 and and shard-2. We identified this by directly connecting to the primary of the shards. &lt;/p&gt;

&lt;p&gt;A few other observations&lt;br/&gt;
1. Running a find from the mongos does not find the duplicate documents since it probably goes to the right shard&lt;/p&gt;

&lt;p&gt;Are these duplicates from a failed migration? If so how come mongod does not clean it up?&lt;/p&gt;</description>
                <environment></environment>
        <key id="343022">SERVER-27590</key>
            <summary>Duplicate documents in multiple shards</summary>
                <type id="6" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14720&amp;avatarType=issuetype">Question</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="13202">Works as Designed</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="dharshanr@scalegrid.net">Dharshan Rangegowda</reporter>
                        <labels>
                    </labels>
                <created>Thu, 5 Jan 2017 18:44:14 +0000</created>
                <updated>Fri, 27 Oct 2023 13:54:37 +0000</updated>
                            <resolved>Fri, 6 Jan 2017 15:50:43 +0000</resolved>
                                                                    <component>Sharding</component>
                                        <votes>0</votes>
                                    <watches>7</watches>
                                                                                                                <comments>
                            <comment id="1474900" author="thomas.schubert" created="Wed, 11 Jan 2017 19:43:16 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=dharshanr%40scalegrid.net&quot; class=&quot;user-hover&quot; rel=&quot;dharshanr@scalegrid.net&quot;&gt;dharshanr@scalegrid.net&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;Please take a look &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-17013&quot; title=&quot;Add &amp;#39;dry run&amp;#39; mode for cleanupOrphaned&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-17013&quot;&gt;&lt;del&gt;SERVER-17013&lt;/del&gt;&lt;/a&gt;, which provides the functionality you&apos;ve described.&lt;/p&gt;

&lt;p&gt;For MongoDB-related support discussion please post on the &lt;a href=&quot;http://groups.google.com/group/mongodb-user&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;mongodb-user group&lt;/a&gt; or &lt;a href=&quot;http://stackoverflow.com/questions/tagged/mongodb&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Stack Overflow with the &lt;tt&gt;mongodb&lt;/tt&gt; tag&lt;/a&gt;. If you have a recommendation to improve our documentation, please feel free to open a DOCS ticket describing the change &lt;a href=&quot;https://jira.mongodb.org/browse/DOCS&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; or by clicking the &quot;report a problem link&quot; on the lower right of any manual page.&lt;/p&gt;

&lt;p&gt;Kind regards,&lt;br/&gt;
Thomas&lt;/p&gt;


</comment>
                            <comment id="1471321" author="dharshanr@scalegrid.net" created="Fri, 6 Jan 2017 17:30:48 +0000"  >&lt;p&gt;Hi Kal,&lt;/p&gt;

&lt;p&gt;Does cleanupOrphaned command work for hash based sharding? The documentation does not say either way - it will be good to call it out.&lt;/p&gt;

&lt;p&gt;Also is there an equivalent method to display orphanedDocuments before we run cleanupOrphaned command? If not I would like to request for that.&lt;/p&gt;</comment>
                            <comment id="1471211" author="kaloian.manassiev" created="Fri, 6 Jan 2017 15:50:17 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=dharshanr%40scalegrid.net&quot; class=&quot;user-hover&quot; rel=&quot;dharshanr@scalegrid.net&quot;&gt;dharshanr@scalegrid.net&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;Like you correctly point out, these orphaned documents must have come from a failed migration (or failed cleanup). MongoS filters them out because it transmits additional information allowing shards to know what document ranges they own, which does not happen if you connect directly to the shard or if you use a secondary read preference.&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;... how come mongod does not clean it up?&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Unfortunately currently the shards have no way of resuming a failed cleanup, which is something we are aware of. MongoDB supports the &lt;a href=&quot;https://docs.mongodb.com/manual/reference/command/cleanupOrphaned/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;cleanupOrphaned&lt;/tt&gt;&lt;/a&gt; command which can be run manually to delete these orphaned documents.&lt;/p&gt;

&lt;p&gt;Hope this helps.&lt;/p&gt;

&lt;p&gt;Best regards,&lt;br/&gt;
-Kal.&lt;/p&gt;</comment>
                            <comment id="1470380" author="dharshanr@scalegrid.net" created="Thu, 5 Jan 2017 18:51:46 +0000"  >&lt;p&gt;One more observation&lt;/p&gt;

&lt;p&gt;1. If we run an aggregation on the shard (on primary) it doesn&apos;t find the duplicates. But if we run an aggregation on the shard with readpreference Secondary it finds these duplicate documents - so this might be another issue. &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="180276">SERVER-17013</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 6 Jan 2017 15:50:17 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        7 years, 5 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_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>
                            7 years, 5 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>dharshanr@scalegrid.net</customfieldvalue>
            <customfieldvalue>kaloian.manassiev@mongodb.com</customfieldvalue>
            <customfieldvalue>kelsey.schubert@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|ht0j1b:</customfieldvalue>

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

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