autocomplete - slowness while opening dialog
Hello All,
In our component dialog, we have an autocomplete element/control, which loads tags from /etc/tags/xyz, when we search with a keyword. "/services/search/tags” is a custom Servlet which loads/autocomplete tags based on keyword search.
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0"
xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0"
xmlns:granite="http://www.adobe.com/jcr/granite/1.0"
xmlns:cq="http://www.day.com/jcr/cq/1.0"
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/autocomplete"
granite:class="cq-dialog-tags-enabledisable"
fieldLabel="Tags"
multiple="{Boolean}true"
name="./aaa:tagName">
<datasource
jcr:primaryType="nt:unstructured"
sling:resourceType="cq/gui/components/common/datasources/tags"/>
<values
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/autocomplete/tags"/>
<options
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/autocomplete/list"
src="/services/search/tags?query={query}"/>
</jcr:root>
But because of above autocomplete, when we open dialog, it is taking around 30 seconds to open.
When we enable DEBUG logs for below API and captured the logs while opening dialing, we observed that, while opening dialog it is traversing all nodes under /etc/tags and thus it is taking time to load.
org.apache.jackrabbit.oak.plugins.index
org.apache.jackrabbit.oak.query
com.day.cq.search
DEBUG LOG:
27.09.2018 05:11:04.923 *DEBUG* [10.246.75.239 [1538039455444] GET /mnt/override/apps/xyz/components/content/site/component-pqr/_cq_dialog.html/content/admin/zzzz/jcr:content/lhs/component-abc_ HTTP/1.1] org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex loading the next 51200 entries for query +(jcr:primaryType:cq:Tag) +:ancestors:/etc/tags/xyz
Why is it traversing /etc/tags while opening the dialog? We don’t want to traverse or load the tags on dialog open.
Please help us to solve this performance issue of dialog.
Thanks in advance
Your Personal Data: We may collect and process information about you that may be subject to data protection laws. For more information about how we use and disclose your personal data, how we protect your information, our legal basis to use your information, your rights and who you can contact, please refer to: www.gs.com/privacy-notices