<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 04:38:08 CET 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>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[MAGNOLIA-9049] Improve search and findbar performance</title>
                <link>https://jira.magnolia-cms.com/browse/MAGNOLIA-9049</link>
                <project id="10000" key="MAGNOLIA">Magnolia</project>
                    <description>&lt;h3&gt;&lt;a name=&quot;Context&quot;&gt;&lt;/a&gt;Context&lt;/h3&gt;

&lt;p&gt;See the &lt;a href=&quot;https://www.notion.so/magnoliacms/UZH-Performance-Issues-8d058d6acf6a455d9e461ef5cf39749c?pvs=4#2d879b1998f242afb160836a3476f6ec&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;notes from UHZ&lt;/a&gt; for pain points and initial findings.&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;Questionsfordiscovery&quot;&gt;&lt;/a&gt;Questions for discovery&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;Align with PDI-61 (Find relevant content fast) and identify remaining gaps:
	&lt;ul&gt;
		&lt;li&gt;Epic: &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MAGNOLIA-8502&quot; title=&quot;[JCR] Search Performance issues&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MAGNOLIA-8502&quot;&gt;&lt;del&gt;MAGNOLIA-8502&lt;/del&gt;&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href=&quot;https://docs.google.com/spreadsheets/d/1hHZvsTbGuWz1GtKG8_yMlXql_cSTSgCKLohVPG1zk9M/edit#gid=0&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Monitoring and tracking metrics&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;Can we speed up permission evaluation within search the way UZH did and evaluate permissions first instead of per item? How far can we generalise the approach if access rights are not fully hierarchical? Is there a good way to optimise queries given a priory knowledge of user permissions? E.g. when permissions are set along sites.
	&lt;ul&gt;
		&lt;li&gt;&lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLPER-173&quot; title=&quot;JcrSearchResultSupplier should consider users access&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLPER-173&quot;&gt;&lt;del&gt;MGNLPER-173&lt;/del&gt;&lt;/a&gt;: JcrSearchResultSupplier should consider users access&lt;br/&gt;
Ticket was closed as &quot;obsolete&quot;, should be revaluated.&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;Removing old content from the repository helps speeding up search by reducing bloat (see &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MAGNOLIA-9057&quot; title=&quot;Repository hygiene&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MAGNOLIA-9057&quot;&gt;MAGNOLIA-9057&lt;/a&gt;)&lt;/li&gt;
	&lt;li&gt;Offloading / externalising specialised content helps speeding up search by reducing bloat
	&lt;ul&gt;
		&lt;li&gt;Indexing (i.e. Solr)&lt;/li&gt;
		&lt;li&gt;Version store (&lt;a href=&quot;https://jira.magnolia-cms.com/browse/MAGNOLIA-9052&quot; title=&quot;Improve performance and scalability of versioning&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MAGNOLIA-9052&quot;&gt;MAGNOLIA-9052&lt;/a&gt;)&lt;/li&gt;
		&lt;li&gt;Assets (&lt;a href=&quot;https://jira.magnolia-cms.com/browse/MAGNOLIA-9055&quot; title=&quot;Improve DAM scalability &quot; class=&quot;issue-link&quot; data-issue-key=&quot;MAGNOLIA-9055&quot;&gt;MAGNOLIA-9055&lt;/a&gt;)&lt;/li&gt;
		&lt;li&gt;Any content that is non hierarchical and tends to create large numbers of direct child nodes. E.g. content related to logging and record keeping. Such content is generally mostly write once read never.&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;Revisit index configurations and ensure we only index what we need (e.g. do we index versions?)&lt;/li&gt;
	&lt;li&gt;Replace &#8220;like&#8221; with &#8220;contains&#8221; in queries where possible. If necessary we can make &quot;contains&quot; the default but leave an option to use contains if explicitly asked for by a user. (A &quot;contains&quot; query should be more efficient than a &quot;like&quot; query but this needs to be quantified before we put too much effort into it).
	&lt;ul&gt;
		&lt;li&gt;&lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLUI-7755&quot; title=&quot;Ability to improve JCR filtering performance by using STARTSWITH instead of CONTAINS operator&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLUI-7755&quot;&gt;&lt;del&gt;MGNLUI-7755&lt;/del&gt;&lt;/a&gt;: Ability to improve JCR filtering performance by using STARTSWITH instead of CONTAINS operator&lt;/li&gt;
		&lt;li&gt;&lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLPER-168&quot; title=&quot;JcrSearchResultSupplier generates inefficient queries&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLPER-168&quot;&gt;&lt;del&gt;MGNLPER-168&lt;/del&gt;&lt;/a&gt;: JcrSearchResultSupplier generates inefficient queries&lt;/li&gt;
		&lt;li&gt;Above tickets cover assets, same should be evaluated for pages&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;QOM QueryManager is inefficient
	&lt;ul&gt;
		&lt;li&gt;This needs to be qualified and quantified: what is slow, why and how much?&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;Finding nodes by name is slow since node names are apparently not indexed.
	&lt;ul&gt;
		&lt;li&gt;Double check, can we adjust the index?&lt;/li&gt;
		&lt;li&gt;Can we use &lt;tt&gt;jcrName&lt;/tt&gt; instead?&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;Developmentnotes&quot;&gt;&lt;/a&gt;Development notes&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;There is an option to &lt;a href=&quot;https://docs.magnolia-cms.com/product-docs/6.2/Administration/Architecture/Configuration-management.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;log slow queries&lt;/a&gt;: &lt;tt&gt;magnolia.jcr.query.logging.thresholdMs&lt;/tt&gt;. &#160;&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="137225">MAGNOLIA-9049</key>
            <summary>Improve search and findbar performance</summary>
                <type id="13" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10887&amp;avatarType=issuetype">Epic</type>
                                            <priority id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/neutral.gif">Neutral</priority>
                        <status id="1" iconUrl="https://jira.magnolia-cms.com/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="mduerig">Michael Duerig</reporter>
                        <labels>
                    </labels>
                <created>Thu, 10 Aug 2023 16:54:30 +0200</created>
                <updated>Fri, 8 Sep 2023 15:40:12 +0200</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                    <issuelinks>
                            <issuelinktype id="10160">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="108888">MGNLUI-7360</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="109141">ADMINCTR-161</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>magnolia-cms.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10249" key="com.pyxis.greenhopper.jira:gh-epic-color">
                        <customfieldname>Epic Colour</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>ghx-label-9</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10247" key="com.pyxis.greenhopper.jira:gh-epic-label">
                        <customfieldname>Epic Name</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>search performance</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10248" key="com.pyxis.greenhopper.jira:gh-epic-status">
                        <customfieldname>Epic Status</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10501"><![CDATA[To Do]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>mduerig</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            26 weeks, 3 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>mduerig</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|y0amju:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_13933" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Urgency (resolution)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="15724"><![CDATA[Normal]]></customfieldvalue>

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