<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:26:09 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>[DRIVERS-2669] Add performance benchmarks for FLE/QE</title>
                <link>https://jira.mongodb.org/browse/DRIVERS-2669</link>
                <project id="10980" key="DRIVERS">Drivers</project>
                    <description>&lt;div class=&quot;panel&quot; style=&quot;background-color: #fafbfc;border-color: #21313c;border-style: solid;border-width: 1px;&quot;&gt;&lt;div class=&quot;panelContent&quot; style=&quot;background-color: #fafbfc;&quot;&gt;
&lt;h3&gt;&lt;a name=&quot;Summary&quot;&gt;&lt;/a&gt;&lt;b&gt;Summary&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;There are currently no benchmarks for FLE/QE performance. We should add some benchmarks analogous to the existing non-encryption ones so that we can have a uniform way of assessing the impact of encryption on driver operations and also guard against regression in the FLE/QE APIs.&lt;/p&gt;

&lt;h3&gt;&lt;a name=&quot;Motivation&quot;&gt;&lt;/a&gt;&lt;b&gt;Motivation&lt;/b&gt;&lt;/h3&gt;
&lt;h4&gt;&lt;a name=&quot;Whoistheaffectedenduser%3F&quot;&gt;&lt;/a&gt;Who is the affected end user?&lt;/h4&gt;
&lt;p&gt;FLE/QE users.&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Howdoesthisaffecttheenduser%3F&quot;&gt;&lt;/a&gt;How does this affect the end user?&lt;/h4&gt;
&lt;p&gt;We haven&apos;t gotten any complaints yet, but it&apos;s better to start collecting performance data sooner rather than later.&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Howlikelyisitthatthisproblemorusecasewilloccur%3F&quot;&gt;&lt;/a&gt;How likely is it that this problem or use case will occur?&lt;/h4&gt;
&lt;p&gt;N/A&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Iftheproblemdoesoccur%2Cwhataretheconsequencesandhowseverearethey%3F&quot;&gt;&lt;/a&gt;If the problem does occur, what are the consequences and how severe are they?&lt;/h4&gt;
&lt;p&gt;N/A&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Isthisissueurgent%3F&quot;&gt;&lt;/a&gt;Is this issue urgent?&lt;/h4&gt;
&lt;p&gt;No, but it aligns with the Q3 performance emphasis from the product side.&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Isthisticketrequiredbyadownstreamteam%3F&quot;&gt;&lt;/a&gt;Is this ticket required by a downstream team?&lt;/h4&gt;
&lt;p&gt;No&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Isthisticketonlyfortests%3F&quot;&gt;&lt;/a&gt;Is this ticket only for tests?&lt;/h4&gt;
&lt;p&gt;Yes&lt;/p&gt;

&lt;h3&gt;&lt;a name=&quot;AcceptanceCriteria&quot;&gt;&lt;/a&gt;&lt;b&gt;Acceptance Criteria&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;To provide a comparison between drivers, specify benchmarks for all drivers to implement:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Benchmark explicit encryption using the CSFLE algorithm: &lt;tt&gt;AEAD_AES_256_CBC_HMAC_SHA_512-Random&lt;/tt&gt;&lt;/li&gt;
	&lt;li&gt;Benchmark explicit encryption using the QE algorithm: &lt;tt&gt;Indexed&lt;/tt&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;To guard against regression in the CSFLE/QE APIs, test with one driver in the libmongocrypt project:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Benchmark explicit encryption with each supported algorithm.&lt;/li&gt;
	&lt;li&gt;Benchmark explicit decryption with each supported algorithm.&lt;/li&gt;
	&lt;li&gt;Benchmark automatic encryption with each supported algorithm.&lt;/li&gt;
	&lt;li&gt;Benchmark automatic decryption with each supported algorithm.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Benchmark only with the &lt;tt&gt;local&lt;/tt&gt; KMS provider. libmongocrypt caches the decrypted Data Encryption Key (DEK). There is no expected benefit to testing other KMS providers.&lt;/p&gt;

&lt;p&gt;Consider specifying these benchmarks alongside the benchmark defined in &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2581&quot; title=&quot;Benchmark and use `mongocrypt_binary_t` definition to improve performance of In-Use Encryption&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2581&quot;&gt;DRIVERS-2581&lt;/a&gt;. &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2581&quot; title=&quot;Benchmark and use `mongocrypt_binary_t` definition to improve performance of In-Use Encryption&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2581&quot;&gt;DRIVERS-2581&lt;/a&gt; adds a benchmark for automatic decrypting of decrypting documents with many (e.g. 1500) encrypted fields using the algorithm &lt;tt&gt;AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic&lt;/tt&gt;.&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
        <key id="2384253">DRIVERS-2669</key>
            <summary>Add performance benchmarks for FLE/QE</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="10038" iconUrl="https://jira.mongodb.org/images/icons/subtask.gif" description="">Backlog</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="daria.pardue@mongodb.com">Daria Pardue</reporter>
                        <labels>
                            <label>leads-triage</label>
                    </labels>
                <created>Wed, 5 Jul 2023 18:49:24 +0000</created>
                <updated>Thu, 21 Dec 2023 21:18:54 +0000</updated>
                                                                <component>Client Side Encryption</component>
                    <component>Performance Benchmarking</component>
                                        <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                        <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                            <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10951" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Driver Changes</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25628"><![CDATA[Needed - No Spec Changes]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_21553" key="com.atlassian.jira.plugin.system.customfieldtypes:labels">
                        <customfieldname>Quarter</customfieldname>
                        <customfieldvalues>
                                        <label>FY25Q2</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i1yrsg:</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>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>