<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 06:30:55 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-75733] Clarify lifetime guarantees of NamespaceString::ns and DatabaseName::db</title>
                <link>https://jira.mongodb.org/browse/SERVER-75733</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;&lt;a href=&quot;https://github.com/mongodb/mongo/blob/ebb779f79187503fc166c42885c622036702c60e/src/mongo/db/namespace_string.h#L419&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;NamespaceString::ns&lt;/a&gt; and &lt;a href=&quot;https://github.com/mongodb/mongo/blob/ebb779f79187503fc166c42885c622036702c60e/src/mongo/db/database_name.h#L141&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;DatabaseName::db&lt;/a&gt; both return &lt;tt&gt;const std::string&amp;amp;&lt;/tt&gt; to their own &lt;tt&gt;std::string&lt;/tt&gt; storage. This leads to difficult-to-maintain code because the lifetime of the returned value is unclear: sometimes it results in a copy, other times it remains a const-ref. &lt;/p&gt;

&lt;p&gt;With the upcoming changes in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-75529&quot; title=&quot;Revisit memory layout for TenantId, DatabaseName, and NamespaceString to address performance regression&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-75529&quot;&gt;&lt;del&gt;SERVER-75529&lt;/del&gt;&lt;/a&gt;, we no longer have the option of returning a const-ref to a member variable.  Having these methods return &lt;tt&gt;std::string&lt;/tt&gt; violates assumptions of some call sites due to the aforementioned lifetime ambiguity.  This ticket is a pre-requisite, it will change these methods to return a &lt;tt&gt;StringData&lt;/tt&gt; which will a) clarify the lifetime assumptions at the callsite, b) ease the transition to the changes proposed in &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-75529&quot; title=&quot;Revisit memory layout for TenantId, DatabaseName, and NamespaceString to address performance regression&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-75529&quot;&gt;&lt;del&gt;SERVER-75529&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</description>
                <environment></environment>
        <key id="2308071">SERVER-75733</key>
            <summary>Clarify lifetime guarantees of NamespaceString::ns and DatabaseName::db</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="13201">Fixed</resolution>
                                        <assignee username="matt.broadstone@mongodb.com">Matt Broadstone</assignee>
                                    <reporter username="matt.broadstone@mongodb.com">Matt Broadstone</reporter>
                        <labels>
                    </labels>
                <created>Wed, 5 Apr 2023 20:47:33 +0000</created>
                <updated>Sun, 29 Oct 2023 21:23:33 +0000</updated>
                            <resolved>Sat, 15 Apr 2023 03:23:51 +0000</resolved>
                                                    <fixVersion>7.1.0-rc0</fixVersion>
                    <fixVersion>7.0.0-rc1</fixVersion>
                                                        <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="5396107" author="xgen-internal-githook" created="Tue, 2 May 2023 23:47:11 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Matt Broadstone&apos;, &apos;email&apos;: &apos;mbroadst@mongodb.com&apos;, &apos;username&apos;: &apos;mbroadst&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-75733&quot; title=&quot;Clarify lifetime guarantees of NamespaceString::ns and DatabaseName::db&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-75733&quot;&gt;&lt;del&gt;SERVER-75733&lt;/del&gt;&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-76222&quot; title=&quot;Avoid temporary allocations of DatabaseName &quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-76222&quot;&gt;&lt;del&gt;SERVER-76222&lt;/del&gt;&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-75529&quot; title=&quot;Revisit memory layout for TenantId, DatabaseName, and NamespaceString to address performance regression&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-75529&quot;&gt;&lt;del&gt;SERVER-75529&lt;/del&gt;&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-76632&quot; title=&quot;Creating view with collection name greater than 64 characters crashes with uassert&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-76632&quot;&gt;&lt;del&gt;SERVER-76632&lt;/del&gt;&lt;/a&gt; &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-76632&quot; title=&quot;Creating view with collection name greater than 64 characters crashes with uassert&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-76632&quot;&gt;&lt;del&gt;SERVER-76632&lt;/del&gt;&lt;/a&gt; Backport perf improvements to NamespaceString&lt;/p&gt;

&lt;p&gt;(cherry picked from commit 3e76161bc537343aa585b305c068b1910578c07f)&lt;br/&gt;
(cherry picked from commit 7cc71f7d5f29a5850a4d186b9554df3dcb407117)&lt;br/&gt;
(cherry picked from commit 7c1ed6898f9004cf7aa9b2e16371fa83c72b3ba3)&lt;br/&gt;
(cherry picked from commit 95782eb4c729cd341ae2398863faa8292d8abd4e)&lt;br/&gt;
(cherry picked from commit bcff3cee04973b3ab91b78a70ca6b5740f22e1a0)&lt;br/&gt;
Branch: v7.0&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/57cb7734d42bad79f636e9be2ad313398614e83e&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/57cb7734d42bad79f636e9be2ad313398614e83e&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="5349060" author="xgen-internal-githook" created="Fri, 14 Apr 2023 20:47:29 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Matt Broadstone&apos;, &apos;email&apos;: &apos;mbroadst@mongodb.com&apos;, &apos;username&apos;: &apos;mbroadst&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-75733&quot; title=&quot;Clarify lifetime guarantees of NamespaceString::ns and DatabaseName::db&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-75733&quot;&gt;&lt;del&gt;SERVER-75733&lt;/del&gt;&lt;/a&gt; Return StringData in NSS::ns, DatabaseName::db&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/3e76161bc537343aa585b305c068b1910578c07f&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/3e76161bc537343aa585b305c068b1910578c07f&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10420">
                    <name>Backports</name>
                                            <outwardlinks description="backported by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.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="25578"><![CDATA[v7.0]]></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_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 5 Apr 2023 20:55:10 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        40 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_17050" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Downstream Team Attention</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="16941"><![CDATA[Not Needed]]></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>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            40 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>matt.broadstone@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i23krj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr941h:zi</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_22250" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Special Downgrade Instructions Required</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="23343"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="7292">Server Serverless 2023-04-17</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_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i236wv:</customfieldvalue>

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