<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:20:50 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-29423] Sharding balancer schedules multiple migrations with the same conflicting source or destination</title>
                <link>https://jira.mongodb.org/browse/SERVER-29423</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;The sharding &lt;a href=&quot;https://github.com/mongodb/mongo/blob/r3.4.4/src/mongo/db/s/balancer/balancer_policy.cpp#L298&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;balancer policy&lt;/a&gt; avoids producing multiple migrations for the same shard.&lt;/p&gt;

&lt;p&gt;However, the policy runs &lt;a href=&quot;https://github.com/mongodb/mongo/blob/r3.4.4/src/mongo/db/s/balancer/balancer_chunk_selection_policy_impl.cpp#L262&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;per collection&lt;/a&gt; and doesn&apos;t save any state across collections. Because of this, if there are multiple collections which need balancing, it may produce overlapping shards.&lt;/p&gt;

&lt;p&gt;There is no correctness problem with this, but it will cause useless &lt;tt&gt;ConflictingOperationInProgress&lt;/tt&gt; errors to pollute the config server and shard&apos;s logs on each balancer round.&lt;/p&gt;</description>
                <environment></environment>
        <key id="389472">SERVER-29423</key>
            <summary>Sharding balancer schedules multiple migrations with the same conflicting source or destination</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="13201">Fixed</resolution>
                                        <assignee username="kaloian.manassiev@mongodb.com">Kaloian Manassiev</assignee>
                                    <reporter username="kaloian.manassiev@mongodb.com">Kaloian Manassiev</reporter>
                        <labels>
                            <label>bkp</label>
                    </labels>
                <created>Fri, 2 Jun 2017 06:15:49 +0000</created>
                <updated>Mon, 30 Oct 2023 23:16:25 +0000</updated>
                            <resolved>Tue, 16 Jan 2018 16:41:40 +0000</resolved>
                                    <version>3.4.4</version>
                                    <fixVersion>3.4.11</fixVersion>
                    <fixVersion>3.6.3</fixVersion>
                    <fixVersion>3.7.2</fixVersion>
                                    <component>Sharding</component>
                                        <votes>4</votes>
                                    <watches>24</watches>
                                                                                                                <comments>
                            <comment id="1781307" author="kaloian.manassiev" created="Mon, 22 Jan 2018 20:54:22 +0000"  >&lt;p&gt;The effect of this fix cannot be easily quantified. It will not make individual migrations to go faster, but it will improve parallelism in the case where there are multiple collections, which all need to be re-balanced. Currently in the worst-case scenario only one migration could effectively run in a round, because of conflicts with other collections.&lt;/p&gt;

&lt;p&gt;So I expect the performance gain to be between 1 to the max possible parallel migrations in a system.&lt;/p&gt;</comment>
                            <comment id="1781296" author="aparna.shah" created="Mon, 22 Jan 2018 20:46:46 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ramon.fernandez&quot; class=&quot;user-hover&quot; rel=&quot;ramon.fernandez&quot;&gt;ramon.fernandez&lt;/a&gt; would you be able to provide some numbers on performance gain observed in balancing/chunk migration  as a result of this fix? It might help us better manage customer expectations in &lt;a href=&quot;https://jira.mongodb.org/projects/HELP/queues/issue/HELP-5680&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.mongodb.org/projects/HELP/queues/issue/HELP-5680&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1775603" author="xgen-internal-githook" created="Tue, 16 Jan 2018 20:17:10 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;kaloian.manassiev@mongodb.com&apos;, &apos;name&apos;: &apos;Kaloian Manassiev&apos;, &apos;username&apos;: &apos;kaloianm&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-29423&quot; title=&quot;Sharding balancer schedules multiple migrations with the same conflicting source or destination&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-29423&quot;&gt;&lt;del&gt;SERVER-29423&lt;/del&gt;&lt;/a&gt; Prevent the balancer policy from scheduling migrations with the same source or destination&lt;/p&gt;

&lt;p&gt;(cherry picked from commit b5ebe8a5492c4f5e33970c0f885b9ac51460b9dc)&lt;br/&gt;
Branch: v3.4&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/fbb20bc3b0e3f9274eeab9e8e2397821c8ab1853&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/fbb20bc3b0e3f9274eeab9e8e2397821c8ab1853&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1775508" author="xgen-internal-githook" created="Tue, 16 Jan 2018 19:23:49 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;kaloian.manassiev@mongodb.com&apos;, &apos;name&apos;: &apos;Kaloian Manassiev&apos;, &apos;username&apos;: &apos;kaloianm&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-29423&quot; title=&quot;Sharding balancer schedules multiple migrations with the same conflicting source or destination&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-29423&quot;&gt;&lt;del&gt;SERVER-29423&lt;/del&gt;&lt;/a&gt; Prevent the balancer policy from scheduling migrations with the same source or destination&lt;/p&gt;

&lt;p&gt;(cherry picked from commit b5ebe8a5492c4f5e33970c0f885b9ac51460b9dc)&lt;br/&gt;
Branch: v3.6&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/2ac2f347399022d91bb3d98ec1e5d5f4c061524c&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/2ac2f347399022d91bb3d98ec1e5d5f4c061524c&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1775183" author="xgen-internal-githook" created="Tue, 16 Jan 2018 16:39:18 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;kaloian.manassiev@mongodb.com&apos;, &apos;name&apos;: &apos;Kaloian Manassiev&apos;, &apos;username&apos;: &apos;kaloianm&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-29423&quot; title=&quot;Sharding balancer schedules multiple migrations with the same conflicting source or destination&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-29423&quot;&gt;&lt;del&gt;SERVER-29423&lt;/del&gt;&lt;/a&gt; Prevent the balancer policy from scheduling migrations with the same source or destination&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/b5ebe8a5492c4f5e33970c0f885b9ac51460b9dc&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/b5ebe8a5492c4f5e33970c0f885b9ac51460b9dc&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1770865" author="akira.kurogane" created="Wed, 10 Jan 2018 22:19:16 +0000"  >&lt;p&gt;Some notes to share for anyone diagnosing the issue backwards from logs and searching through this JIRA.&lt;/p&gt;

&lt;p&gt;1. The following sort of &lt;em&gt;&quot;Balancer move ... failed&quot;&lt;/em&gt; log message with &lt;em&gt;&quot;caused by :: ConflictingOperationInProgress&quot;&lt;/em&gt; will be prevalent on the primary config server&apos;s logs before each new &lt;em&gt;{ what: &quot;balancer.round&quot; }&lt;/em&gt; document is inserted to the actionlog collection&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;2017-12-17T11:19:47.508Z I SHARDING [NetworkInterfaceASIO-ShardRegistry-0] distributed lock with ts: &apos;5a2e2d929069cca7cde7e996&apos; and _id: &apos;&amp;lt;collection_namespace_A&amp;gt;&apos; unlocked.&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;2017-12-17T11:19:47.522Z I SHARDING [Balancer] Balancer move &amp;lt;collection_namespace_A&amp;gt;: [{ &amp;lt;minKey_p&amp;gt; }, { &amp;lt;maxKey_p&amp;gt;}), from shard3, to shard1 failed :: caused by :: ConflictingOperationInProgress: Unable to start new migration because this shard is currently donating chunk [&amp;lt;minKey_f&amp;gt;, &amp;lt;maxKey_f&amp;gt;) for namespace &amp;lt;collection_namespace_A&amp;gt; to shard4&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;2017-12-17T11:19:47.522Z I SHARDING [Balancer] Balancer move &amp;lt;collection_namespace_B&amp;gt;: [{ &amp;lt;minKey_q&amp;gt; }, { &amp;lt;maxKey_q&amp;gt;}), from shard3, to shard1 failed :: caused by :: ConflictingOperationInProgress: Unable to start new migration because this shard is currently donating chunk [&amp;lt;minKey_g&amp;gt;, &amp;lt;maxKey_g&amp;gt;) for namespace &amp;lt;collection_namespace_A&amp;gt; to shard1&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;...&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;2017-12-17T11:19:47.522Z I SHARDING [Balancer] Balancer move &amp;lt;collection_namespace_C&amp;gt;: [{ &amp;lt;minKey_r&amp;gt; }, { &amp;lt;maxKey_r&amp;gt;}), from shard4, to shard2 failed :: caused by :: ConflictingOperationInProgress: Unable to start new migration because this shard is currently donating chunk [&amp;lt;minKey_m&amp;gt;, &amp;lt;maxKey_m&amp;gt;) for namespace &amp;lt;collection_namespace_A&amp;gt; to shard4&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;2017-12-17T11:19:47.522Z I SHARDING [Balancer] Balancer move &amp;lt;collection_namespace_B&amp;gt;: [{ &amp;lt;minKey_s&amp;gt; }, { &amp;lt;maxKey_s&amp;gt;}), from shard1, to shard5 failed :: caused by :: ConflictingOperationInProgress: Unable to start new migration because this shard is currently donating chunk [&amp;lt;minKey_n&amp;gt;, &amp;lt;maxKey_n&amp;gt;) for namespace &amp;lt;collection_namespace_A&amp;gt; to shard2&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;2017-12-17T11:19:47.522Z I SHARDING [Balancer] about to log metadata event into actionlog: { _id: &quot;serverY10-2017-12-17T06:19:47.522-0500-5a3652d39069cca7cdf8741d&quot;, server: &quot;serverY&quot;, clientAddr: &quot;&quot;, time: new Date(1513509587522), what: &quot;balancer.round&quot;, ns: &quot;&quot;, details: { executionTimeMillis: 9990, errorOccured: false, candidateChunks: 14, chunksMoved: 2 } }&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;
&lt;p&gt;and spread between the shards there will be a &amp;gt;= number of { what: &quot;moveChunk.error&quot; } documents being inserted into the changelog collection. There may be other causes (&lt;em&gt;ChunkRangeCleanupPending&lt;/em&gt;, &lt;em&gt;ChunkTooBig&lt;/em&gt;, etc.) but the &lt;em&gt;ConflictingOperationInProgress&lt;/em&gt; will outnumber them.&lt;/p&gt;

&lt;p&gt;2. The race between moveChunks can lead to some shard pairs not having any migration at all, even though there were candidates that could have used those shard pairs. In the example above the &lt;em&gt;{ what: &quot;balancer.round&quot; }&lt;/em&gt; document has &lt;em&gt;..., errorOccured: false, candidateChunks: 14, chunksMoved: 2&lt;/em&gt; but it was a six-shard cluster with candidates for all shard pairs, so it should have been &lt;em&gt;chunksMoved: 3&lt;/em&gt; in the typical balance round. The reason why 1 was missed was:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;A migration from shard A =&amp;gt; B begins&lt;/li&gt;
	&lt;li&gt;A migration from shard C =&amp;gt; D begins&lt;/li&gt;
	&lt;li&gt;A migration from shard F =&amp;gt; B aborts because of the first one above&lt;/li&gt;
	&lt;li&gt;A migration from E =&amp;gt; F aborts because it contacted shard F during the short moment in time F was still awaiting the response from B.&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="1758680" author="vkatikineni@snapfish-llc.com" created="Fri, 22 Dec 2017 18:51:00 +0000"  >&lt;p&gt;ConflictingOperationInProgress error is also slowing down the chunk migration rate when there are multiple collections to be balanced. Looks like a shard can only participate in one chunk migration at a time ie either receive or donate. We should be able to receive/donate multiple chunks from the same shard provided they are different collections. &lt;/p&gt;</comment>
                            <comment id="1593789" author="oleg@evergage.com" created="Sat, 10 Jun 2017 22:02:35 +0000"  >&lt;p&gt;The impact of this problem is captured in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-29149&quot; title=&quot;SHARDING CatalogCacheLoader + Balancer filling up to 2gb of log in ~4h&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-29149&quot;&gt;&lt;del&gt;SERVER-29149&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="1593788" author="oleg@evergage.com" created="Sat, 10 Jun 2017 22:00:46 +0000"  >&lt;p&gt;If many collections need balancing, this effectively degrades the config servers to constantly refresh the chunks due to ConflictingOperationInProgress. This heavily pollutes the logs, at a rate of ~600M/hr.&lt;/p&gt;

&lt;p&gt;I think part of the problem is that ConflictingOperationInProgress for the reason of &quot;Unable to start new migration because this shard is currently receiving chunk&quot; is not an operation that should merit a refresh. It&apos;s an operation that&apos;s conflicting with the act of transferring data, but not necessarily with this collection. So ConflictingOperationInProgress represents both &quot;unable to transfer due to a shard issue&quot; and &quot;unable to transfer due to an another operation altering this collection&apos;s metadata.&quot; Is it possible that only the 2nd category needs a refresh retry in catalog_cache.cpp?&lt;/p&gt;

&lt;p&gt;If you look in the method CatalogCache::_scheduleCollectionRefresh_inlock, in this section:&lt;/p&gt;

&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;        // It is possible that the metadata is being changed concurrently, so retry the&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;        // refresh again&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;        if (status == ErrorCodes::ConflictingOperationInProgress &amp;amp;&amp;amp;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;            refreshAttempt &amp;lt; kMaxInconsistentRoutingInfoRefreshAttempts) {&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;            _scheduleCollectionRefresh_inlock(dbEntry, nullptr, nss, refreshAttempt + 1);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;

&lt;p&gt;you can see how ConflictingOperationInProgress operations due to shards transferring chunks is going to lead to heavy collection metadata refreshing, if lots of collections need balancing.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10420">
                    <name>Backports</name>
                                            <outwardlinks description="backported by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                                        </outwardlinks>
                                                                <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_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_12450" key="com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes">
                        <customfieldname>Backport Requested</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="15141"><![CDATA[v3.6]]></customfieldvalue>
    <customfieldvalue key="14340"><![CDATA[v3.4]]></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_13552" key="com.go2group.jira.plugin.crm:crm_generic_field">
                        <customfieldname>Case</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[[500A000000ZOEmpIAH]]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Sat, 10 Jun 2017 22:00:46 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        6 years, 3 weeks, 2 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>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            6 years, 3 weeks, 2 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10032" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Operating System</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10026"><![CDATA[ALL]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>akira.kurogane</customfieldvalue>
            <customfieldvalue>aparna.shah@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>kaloian.manassiev@mongodb.com</customfieldvalue>
            <customfieldvalue>oleg@evergage.com</customfieldvalue>
            <customfieldvalue>vkatikineni@snapfish-llc.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|ht8fjj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|ht0i4v:</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_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="2089">Sharding 2018-01-29</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_11861" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>User Summary</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="11856"><![CDATA[Not Needed]]></customfieldvalue>

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

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