<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:22:47 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-50489] [polish] Not link ReplicaSetAwareServiceRegistry, PrimaryOnlyService, and TenantMigrationDonorService into embedded</title>
                <link>https://jira.mongodb.org/browse/SERVER-50489</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;As part of &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-50066&quot; title=&quot;Rehost tenant migration donor&amp;#39;s logic on Primary-Only Service&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-50066&quot;&gt;&lt;del&gt;SERVER-50066&lt;/del&gt;&lt;/a&gt;, tenant_migration_donor_service.cpp was put in its own library due to issues with the destructor of ReplicaSetAwareServiceRegistry on embedded which caused this &lt;a href=&quot;https://github.com/mongodb/mongo/blob/43f5d658cded44a342a7e56db3ebe7ffd272abf1/src/mongo/db/repl/replica_set_aware_service.cpp#L45&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;invariant&lt;/a&gt; to fail. Here is a quote of Esha&apos;s code review comment for this:&lt;/p&gt;

&lt;p&gt;&quot;&lt;em&gt;mongod &lt;a href=&quot;https://github.com/mongodb/mongo/blob/f719f1bee7f548ca74774e92b4fa150a3db15f82/src/mongo/db/mongod_main.cpp#L1329&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;calls&lt;/a&gt; setGlobalServiceContext here in mongod startup but the ServiceContext never gets destroyed. On the other hand, embedded also &lt;a href=&quot;https://github.com/mongodb/mongo/blob/f719f1bee7f548ca74774e92b4fa150a3db15f82/src/mongo/embedded/embedded.cpp#L200&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;calls&lt;/a&gt; setGlobalServiceContext in startup&lt;/em&gt;&#160;&lt;em&gt;but also calls it again with &lt;a href=&quot;https://github.com/mongodb/mongo/blob/f719f1bee7f548ca74774e92b4fa150a3db15f82/src/mongo/embedded/embedded.cpp#L185&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;nullptr&lt;/a&gt; on shutdown. &lt;span class=&quot;error&quot;&gt;&amp;#91;...&amp;#93;&lt;/span&gt; This means since ReplicaSetAwareServiceRegistry is a decoration on ServiceContext, its destructor doesn&apos;t run in mongod but does run in embedded. So, the invariant maybe would be triggered in both mongod and embedded if ServiceContext was being destroyed in mongod. As for why the invariant is being triggered at all, I think the ServiceContextDeleter&apos;s operator() is supposed to invoke the DestructorActions &lt;a href=&quot;https://github.com/mongodb/mongo/blob/f719f1bee7f548ca74774e92b4fa150a3db15f82/src/mongo/db/service_context.cpp#L474-L477&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;registered&lt;/a&gt; via ConstructorActionRegisterer by calling &apos;onDestroy&apos;. The DestructorAction should &lt;a href=&quot;https://github.com/mongodb/mongo/blob/2da98e01960de6d24174df19b0b926752b9dbddf/src/mongo/db/repl/replica_set_aware_service.h#L170&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;call&lt;/a&gt; ReplicaSetAwareServiceRegistry::_unregisterService which should &lt;a href=&quot;https://github.com/mongodb/mongo/blob/0d073ced6c2d652a6543f580390ce3637a280f3c/src/mongo/db/repl/replica_set_aware_service.cpp#L90&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;erase&lt;/a&gt; the service from the list. I have not figured out why the ReplicaSetAwareServiceRegistry&apos;s destructor&lt;/em&gt;&lt;br/&gt;
 &lt;em&gt;appears to be getting called before the &apos;onDestroy&apos; (or why &apos;onDestroy&apos; is not&lt;/em&gt;&lt;br/&gt;
 &lt;em&gt;getting called at all).&lt;/em&gt;&quot;&lt;/p&gt;

&lt;p&gt;We should investigate that further and find a library to put tenant_migration_donor_service.cpp and other primary-only services.&lt;/p&gt;</description>
                <environment></environment>
        <key id="1450393">SERVER-50489</key>
            <summary>[polish] Not link ReplicaSetAwareServiceRegistry, PrimaryOnlyService, and TenantMigrationDonorService into embedded</summary>
                <type id="3" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14718&amp;avatarType=issuetype">Task</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="2">Won&apos;t Fix</resolution>
                                        <assignee username="backlog-server-sharding-nyc">[DO NOT USE] Backlog - Sharding NYC</assignee>
                                    <reporter username="cheahuychou.mao@mongodb.com">Cheahuychou Mao</reporter>
                        <labels>
                            <label>pm-1791_non-cloud-blocking</label>
                            <label>pm-1791_polish</label>
                    </labels>
                <created>Mon, 24 Aug 2020 16:02:21 +0000</created>
                <updated>Tue, 6 Dec 2022 02:11:16 +0000</updated>
                            <resolved>Thu, 8 Apr 2021 05:05:32 +0000</resolved>
                                                                    <component>Sharding</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                    <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1425822">SERVER-50066</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>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25134"><![CDATA[Sharding NYC]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        3 years, 24 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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-1791</customfieldvalue>
                        </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>alexander.golin@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            3 years, 24 weeks, 2 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>backlog-server-sharding-nyc</customfieldvalue>
            <customfieldvalue>cheahuychou.mao@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hy1snj:</customfieldvalue>

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

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