<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:24: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-30653] Randomize Chunk Locations with chunkLocationRandomizer </title>
                <link>https://jira.mongodb.org/browse/SERVER-30653</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Current chunk migration strategies specify that some chunks will stay in a location until split.  This can lead, over time and with imperfect choices of shard keys, to hot shards.&lt;/p&gt;

&lt;p&gt;The problem can be solved, to a point, by creating a job that randomly relocates chunks.&lt;/p&gt;

&lt;p&gt;The goal here is to eliminate any existing bias in where the chunks are located, and improve shard performance.&lt;/p&gt;

&lt;p&gt;This could be enabled or disabled by a setting in the balancer, and changed the same way we change the setting for secondaryThrottle.  This setting, chunkLocationRandomizer , could randomly pick a chunk and move it to a different server.  &lt;/p&gt;

&lt;p&gt;Of course, this could be made more intelligent by attempting to detect how many hot chunks there are, creating a plan that (if most are on one shard) moves them to another specific shard based on an optimized pattern.  There would need to be hysteresis so it didn&apos;t constantly move the same chunk back and forth, but that wouldn&apos;t be difficult.  But, it&apos;s enough to just relocate existing chunks into different shards to ensure uniform traffic.&lt;/p&gt;

&lt;p&gt;In the short run, however, the randomizer could significantly minimze hot-shard problems caused by historical accident.  &lt;/p&gt;

&lt;p&gt;BTW, the reason I have a hot shard is that I can&apos;t have a shard key that&apos;s compound index of (field_one hashed and also field_two hashed-or-unhashed.).  Instead, I have compound index, and it leads to a hot shard since field 2 is monotonically increasing.  &lt;/p&gt;</description>
                <environment></environment>
        <key id="416490">SERVER-30653</key>
            <summary>Randomize Chunk Locations with chunkLocationRandomizer </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="3">Duplicate</resolution>
                                        <assignee username="kelsey.schubert@mongodb.com">Kelsey Schubert</assignee>
                                    <reporter username="kevin.rice@searshc.com">Kevin Rice</reporter>
                        <labels>
                    </labels>
                <created>Mon, 14 Aug 2017 22:02:20 +0000</created>
                <updated>Wed, 20 Sep 2017 05:04:19 +0000</updated>
                            <resolved>Fri, 18 Aug 2017 15:50:49 +0000</resolved>
                                    <version>3.4.7</version>
                                                    <component>Performance</component>
                    <component>Sharding</component>
                                        <votes>0</votes>
                                    <watches>6</watches>
                                                                                                                <comments>
                            <comment id="1651511" author="thomas.schubert" created="Fri, 18 Aug 2017 15:50:40 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=kevin.rice%40searshc.com&quot; class=&quot;user-hover&quot; rel=&quot;kevin.rice@searshc.com&quot;&gt;kevin.rice@searshc.com&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;Thank you for the improvement request. From your description, this feature appears present one possible solution to work described by &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-5047&quot; title=&quot;Better chunk selection when balancing&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-5047&quot;&gt;SERVER-5047&lt;/a&gt;. Therefore, I&apos;m linking this ticket so it&apos;ll be considered as part of that work. Please feel free to vote for &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-5047&quot; title=&quot;Better chunk selection when balancing&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-5047&quot;&gt;SERVER-5047&lt;/a&gt; and watch it for updates.&lt;/p&gt;

&lt;p&gt;Kind regards,&lt;br/&gt;
Thomas&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                            <outwardlinks description="duplicates">
                                        <issuelink>
            <issuekey id="31307">SERVER-5047</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>1.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 15 Aug 2017 12:20:04 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        6 years, 25 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>backlog-server-pm</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            6 years, 25 weeks, 5 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>kelsey.schubert@mongodb.com</customfieldvalue>
            <customfieldvalue>kevin.rice@searshc.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|htcztb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|ht4qpr:</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>
                                    <customfieldvalue><![CDATA[kelsey.schubert@mongodb.com]]></customfieldvalue>
    

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|htclw7:</customfieldvalue>

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