<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 06:14:58 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-69987] Investigate big_collection regressions in SBE</title>
                <link>https://jira.mongodb.org/browse/SERVER-69987</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;This task includes, but is not limited to, investigating the following tests:&#160;&lt;/p&gt;


&lt;div class=&apos;table-wrap&apos;&gt;
&lt;table class=&apos;confluenceTable&apos;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Filter (nDocs: 25, docSize: 16777216, batchSize: 0)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;-25.9781047&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Filter (nDocs: 400, docSize: 1048576, batchSize: 1)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;-23.54608963&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Filter (nDocs: 6400, docSize: 65536, batchSize: 16)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;-10.28602421&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Scan (nDocs: 25, docSize: 16777216, batchSize: 0)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;-27.40575863&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Scan (nDocs: 400, docSize: 1048576, batchSize: 1)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;-22.98373918&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
</description>
                <environment></environment>
        <key id="2145439">SERVER-69987</key>
            <summary>Investigate big_collection regressions in SBE</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="13201">Fixed</resolution>
                                        <assignee username="anna.wawrzyniak@mongodb.com">Anna Wawrzyniak</assignee>
                                    <reporter username="mihai.andrei@mongodb.com">Mihai Andrei</reporter>
                        <labels>
                            <label>pm2697-m3</label>
                    </labels>
                <created>Mon, 26 Sep 2022 18:02:42 +0000</created>
                <updated>Sun, 29 Oct 2023 21:32:48 +0000</updated>
                            <resolved>Wed, 18 Jan 2023 23:19:36 +0000</resolved>
                                                    <fixVersion>6.3.0-rc0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>8</watches>
                                                                                                                <comments>
                            <comment id="5121751" author="xgen-internal-githook" created="Wed, 18 Jan 2023 19:23:22 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Drew Paroski&apos;, &apos;email&apos;: &apos;drew.paroski@mongodb.com&apos;, &apos;username&apos;: &apos;paroski&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-69987&quot; title=&quot;Investigate big_collection regressions in SBE&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-69987&quot;&gt;&lt;del&gt;SERVER-69987&lt;/del&gt;&lt;/a&gt; Avoid copying slot data during saveState at the command boundary in SBE&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/7280be3b5e1517c767f8b637e28bb23d9da008db&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/7280be3b5e1517c767f8b637e28bb23d9da008db&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4952698" author="JIRAUSER1263795" created="Thu, 3 Nov 2022 16:41:05 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/PM-2451&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.mongodb.org/browse/PM-2451&lt;/a&gt; Looks like it would solve this problem (option 3)&lt;/p&gt;</comment>
                            <comment id="4950405" author="JIRAUSER1263795" created="Wed, 2 Nov 2022 23:54:46 +0000"  >&lt;p&gt;Performance comparison for big collections:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://docs.google.com/spreadsheets/d/1ZluIWD522RdxJScTxIjZKNNRr-kgKpZMl4pr35-KqEo/edit?usp=sharing&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.google.com/spreadsheets/d/1ZluIWD522RdxJScTxIjZKNNRr-kgKpZMl4pr35-KqEo/edit?usp=sharing&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;
&lt;div class=&apos;table-wrap&apos;&gt;
&lt;table class=&apos;confluenceTable&apos;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;&#160;&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Classic&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;SBE&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Prototype 1&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Prototype 2&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Prototype 1 vs Classis&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Prototype 1 vs SBE&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Prototype 2 vs Classic&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;Prototype 2 vs SBE&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Filter (nDocs: 25, docSize: 16777216, batchSize: 0)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.612198471&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.111650135&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.616177834&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.616677657&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.001523377&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.2389258&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.001714719&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.239162498&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Filter (nDocs: 400, docSize: 1048576, batchSize: 1)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;3.224426393&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.940898805&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;3.029434149&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;3.223661596&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;0.9395265327&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.030104859&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;0.9997628116&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.096148426&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Filter (nDocs: 6400, docSize: 65536, batchSize: 16)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;3.162875012&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;3.164483595&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;3.211180576&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;3.154049627&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.015272676&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.014756588&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;0.9972096953&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;0.9967027897&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Scan (nDocs: 25, docSize: 16777216, batchSize: 0)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.381298787&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.908265342&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.40463363&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.413963529&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.009799208&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.260114921&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.013717196&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.265004125&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;BigCollection.Scan (nDocs: 400, docSize: 1048576, batchSize: 1)&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.894236321&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.679483906&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.895949339&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;2.895826246&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.000591872&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.080786241&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.000549342&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;1.080740302&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;


&lt;p&gt;Both prototypes fix the regression.&lt;/p&gt;</comment>
                            <comment id="4950395" author="JIRAUSER1263795" created="Wed, 2 Nov 2022 23:46:09 +0000"  >&lt;p&gt;This issue is caused by unnecessary copying bson objects by save/restore stage that happens at the GetMore command boundary. The larger the document and the smaller the batch size (in number of documents count) the larger the overhead of making the document copy per batch that GetMore command computes.&lt;/p&gt;

&lt;p&gt;Details:&lt;br/&gt;
When GetMore command completes, we need to perform saveState on PlanStage and then when subsequent GetMore command runs, we perform restoreState. Specificically in this case SBE ScanStage::saveState assumes that the bson record will be no longer available, and also conservatively assumes that the slot where the document was stored may be accessed after restoreState.&lt;/p&gt;

&lt;p&gt;In case of simple scans, or plans that consist of streaming stages a above scan (makeBson, filter, project, traverse, limit, etc) the stored document returned by scan stage will never be accesed and the copy that is made in saveState will be thrown away.&lt;/p&gt;

&lt;p&gt;Possible solutions:&lt;/p&gt;

&lt;p&gt;1) Do nothing and accept the overhead and regression compared to classis for cases with large documents and small batch size.&lt;/p&gt;

&lt;p&gt;2) Advise customers to use larger batch size. This may not be practical when collection contains large documents. A batch size of 100 documents of 16MB would result in 1.6gb per batch which may not be a good choice.&lt;/p&gt;

&lt;p&gt;3) Change storage api to guarantee some form of &quot;stable pointers&quot; to returned documents, that survive context switch and yielding. A storage that supports mvcc or copy-on-write might be able to satisfy that requirement even if page was modified. However, in certain cases a copy might still need to be made (for example when the old page needed to be collected for some reased). In such case, QE would need still need be able to switch to the new document pointer and possibly restore all views/subtrees of such document.&lt;/p&gt;

&lt;p&gt;4) Modify the save/restoreState logic in SBE to avoid unnecessary copies where it is known that the slots holding the document will not be accessed until subsequent getNext(). GetMore always performs getNext() as first operation after restoreState on root, so that invariant is true for root and for all its streamed inner-most children. Such save/restore logic extension would need ability for GetMore to notify the stage that slots will not longer be accessed until following getNext() and then that information would need to be propagated through the sbe stage tree to identify all stages that can safely discard their state when performing save/restore.&lt;/p&gt;

&lt;p&gt;Prototype #1:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/10gen/mongo/pull/new/anna.wawrzyniak/save_restore&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/10gen/mongo/pull/new/anna.wawrzyniak/save_restore&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This extends the saveState to include a &quot;bool discardPublicState&quot; parameter that indicates that the public slots of the stage will not be accessed until the subsequent getNext(). The streaming stages propagate the discardPublicState to children when appropriate. The default implementation conservatively assumes discardPublicState = false.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Prototype #2:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/10gen/mongo/pull/new/anna.wawrzyniak/save_restore2&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/10gen/mongo/pull/new/anna.wawrzyniak/save_restore2&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This utilizes the existing mechanism of marking slots as not needed used by yielding. Stages already use disableSlotAccess to indicate that slots are no longer needed:&lt;/p&gt;

&lt;p&gt;a) non-recursive - typically called from getNext method to indicate that the slots are no longer needed and they will be recomputed when getNext completes&lt;br/&gt;
b) recursive - typically called when it is known that the slots are no longer needed and will not be used before subsequent call to close/open.&lt;/p&gt;

&lt;p&gt;A GetMore command executor could use disableSlotAccess() method that the slots are no longer required until subsequent getNext call. However, the non-recursibe version of disableSlotAccess only marks the parent stage, but does not propagate that information to children. In case of streaming stages, that information could be propagated to children when appropriate and preventing unnecessary slot copying when safe to do so.&lt;/p&gt;

&lt;p&gt;The prototype avoids the potential square complexity when disableSlotAccess propagates to its children in getNext method, by using lazy evaluation. Only when saveState is called, the subtree actually computes whether stages have slot access enabled/disabled.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Performance:&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="2145480">SERVER-69990</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10520">
                    <name>Problem/Incident</name>
                                            <outwardlinks description="causes">
                                                        </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="411410" name="screenshot-1.png" size="35429" author="alberto.massari@mongodb.com" created="Fri, 28 Oct 2022 13:51:38 +0000"/>
                    </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>7.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>Fri, 28 Oct 2022 13:52:41 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        1 year, 3 weeks 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_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-2697</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>
                            1 year, 3 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_16465" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Linked BF Score</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>35.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>anna.wawrzyniak@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>mihai.andrei@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i1bqi7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i0uffk:</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="5916">QE 2022-10-31</customfieldvalue>
    <customfieldvalue id="5918">QE 2022-11-14</customfieldvalue>
    <customfieldvalue id="5920">QE 2022-11-28</customfieldvalue>
    <customfieldvalue id="5922">QE 2022-12-12</customfieldvalue>
    <customfieldvalue id="5924">QE 2022-12-26</customfieldvalue>
    <customfieldvalue id="5926">QE 2023-01-09</customfieldvalue>
    <customfieldvalue id="5928">QE 2023-01-23</customfieldvalue>

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

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