<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 06:47:37 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-81864] Provide an API to obtain a list of necessary config database collections for debugging</title>
                <link>https://jira.mongodb.org/browse/SERVER-81864</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Currently, users who would like to review the contents of the Sharding config database for debugging purposes can output this database via mongodump (see &lt;a href=&quot;https://jira.mongodb.org/browse/TOOLS-3374&quot; title=&quot;Dumping Config Database Fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;TOOLS-3374&quot;&gt;&lt;del&gt;TOOLS-3374&lt;/del&gt;&lt;/a&gt; for an example).&lt;/p&gt;

&lt;p&gt;The collections that can/cannot be output have historically been tracked in hardcoded lists in the mongodump code (and similarly for the mongorestore code). A more robust solution moving forward is to have a Sharding API for obtaining this list of collections, to avoid unexpected auth errors like those described in the TOOLS ticket above, and also to ensure that only the necessary debugging collections are included. This list should ideally include only collections that are safe for &lt;b&gt;both&lt;/b&gt; mongodump and mongorestore.&lt;/p&gt;

&lt;p&gt;When connecting to any Server versions that don&apos;t have this API, the tools should continue to use hardcoded lists. To avoid auth errors like in &lt;a href=&quot;https://jira.mongodb.org/browse/TOOLS-3374&quot; title=&quot;Dumping Config Database Fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;TOOLS-3374&quot;&gt;&lt;del&gt;TOOLS-3374&lt;/del&gt;&lt;/a&gt;, it would be great to exclude the collections known to result in auth errors. &lt;/p&gt;</description>
                <environment></environment>
        <key id="2459291">SERVER-81864</key>
            <summary>Provide an API to obtain a list of necessary config database collections for debugging</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="10033" iconUrl="https://jira.mongodb.org/images/icons/statuses/information.png" description="Status for tickets that need to be escalated and unblocked on our team.">Blocked</status>
                    <statusCategory id="4" key="indeterminate" colorName="inprogress"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="aitor.esteve@mongodb.com">Aitor Esteve Alvarado</assignee>
                                    <reporter username="maria.vankeulen@mongodb.com">Maria van Keulen</reporter>
                        <labels>
                    </labels>
                <created>Wed, 4 Oct 2023 16:14:02 +0000</created>
                <updated>Tue, 6 Feb 2024 14:01:57 +0000</updated>
                                                                            <component>Sharding</component>
                                        <votes>2</votes>
                                    <watches>12</watches>
                                                                                                                <comments>
                            <comment id="5767532" author="maria.vankeulen" created="Tue, 10 Oct 2023 13:59:40 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=kaloian.manassiev%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;kaloian.manassiev@mongodb.com&quot;&gt;kaloian.manassiev@mongodb.com&lt;/a&gt; I&apos;ll defer to &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=max.hirschhorn%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;max.hirschhorn@mongodb.com&quot;&gt;max.hirschhorn@mongodb.com&lt;/a&gt; and &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=martin.barciela-pires%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;martin.barciela-pires@mongodb.com&quot;&gt;martin.barciela-pires@mongodb.com&lt;/a&gt; on the answer to that question, as they are more familiar with this workflow than I.&lt;/p&gt;</comment>
                            <comment id="5766708" author="kaloian.manassiev" created="Tue, 10 Oct 2023 09:01:30 +0000"  >&lt;p&gt;Also, &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=maria.vankeulen%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;maria.vankeulen@mongodb.com&quot;&gt;maria.vankeulen@mongodb.com&lt;/a&gt;, can we please clarify what is involved in &quot;... &lt;span class=&quot;error&quot;&gt;&amp;#91;reviewing&amp;#93;&lt;/span&gt; the contents of the Sharding config database for debugging purposes&quot; ? I am asking because it can mean different things:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Access to the catalog: Reviewing the set of sharded (soon to be all) collections in the cluster and their placement&lt;/li&gt;
	&lt;li&gt;Access to changes to the catalog: Reviewing the placement and log collections, which might be insufficient to see all catalog changes&lt;/li&gt;
	&lt;li&gt;Access to the config collections of the cluster (not strictly related to the CSRS)&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;From reading &lt;a href=&quot;https://jira.mongodb.org/browse/TOOLS-3374&quot; title=&quot;Dumping Config Database Fails&quot; class=&quot;issue-link&quot; data-issue-key=&quot;TOOLS-3374&quot;&gt;&lt;del&gt;TOOLS-3374&lt;/del&gt;&lt;/a&gt; I suspect it is about 1 and 2, right? If that is the case, providing an API listCatalog or something like that might be more practical, although not necessarily scalable if it is about dumping a lot of data to be able to reconstruct a new (empty) cluster.&lt;/p&gt;</comment>
                            <comment id="5759104" author="tommaso.tocci" created="Fri, 6 Oct 2023 14:29:19 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=max.hirschhorn%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;max.hirschhorn@mongodb.com&quot;&gt;max.hirschhorn@mongodb.com&lt;/a&gt; pointed out that there are collections in the config database that are:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;not strictly needed&#160; for debugging&lt;/li&gt;
	&lt;li&gt;contain user data&lt;/li&gt;
	&lt;li&gt;can be arbitrary big&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;One example is the &lt;font color=&quot;#e01e5a&quot;&gt;config.image_collection&lt;/font&gt; .&lt;/p&gt;

&lt;p&gt;Considering this, I think it makes sense to provide an API owned and maintained by core server team that return a list of collection to include in the config dump for debugging purposes.&lt;/p&gt;</comment>
                            <comment id="5759030" author="tommaso.tocci" created="Fri, 6 Oct 2023 14:05:07 +0000"  >&lt;p&gt;I was wondering if we can take a simpler approach for this.&lt;/p&gt;

&lt;p&gt;The idea is that the mongodump tool will call &lt;tt&gt;listCollection&lt;/tt&gt; on the config database (as it does today). It will try to dump all collections and if the user doesn&apos;t have enough permission to read a specific collection, it will simply skip that collection, emit a warning and continue dumping the other collections for which the user has enough permission.&lt;/p&gt;

&lt;p&gt;&#160;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=maria.vankeulen%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;maria.vankeulen@mongodb.com&quot;&gt;maria.vankeulen@mongodb.com&lt;/a&gt; do you think the proposal make sense? if not, why?&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="2459465">TOOLS-3378</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2522551">TOOLS-3444</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>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25133"><![CDATA[Sharding EMEA]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_23577" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>CAR Impact</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25716"><![CDATA[3 High (users + team + external teams)]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 6 Oct 2023 14:05:07 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        17 weeks, 1 day 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>connie.chen@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            17 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>aitor.esteve@mongodb.com</customfieldvalue>
            <customfieldvalue>kaloian.manassiev@mongodb.com</customfieldvalue>
            <customfieldvalue>maria.vankeulen@mongodb.com</customfieldvalue>
            <customfieldvalue>tommaso.tocci@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i2tgyv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i2bdxo:</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="7721">Sharding EMEA 2023-10-30</customfieldvalue>
    <customfieldvalue id="7888">CAR Team 2023-11-13</customfieldvalue>
    <customfieldvalue id="7889">CAR Team 2023-11-27</customfieldvalue>
    <customfieldvalue id="7890">CAR Team 2023-12-11</customfieldvalue>
    <customfieldvalue id="7891">CAR Team 2023-12-25</customfieldvalue>
    <customfieldvalue id="7892">CAR Team 2024-01-08</customfieldvalue>
    <customfieldvalue id="8006">CAR Team 2024-01-22</customfieldvalue>
    <customfieldvalue id="8007">CAR Team 2024-02-05</customfieldvalue>
    <customfieldvalue id="8008">CAR Team 2024-02-19</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10555" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</customfieldvalue>
                        </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|i2t347:</customfieldvalue>

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