Hey guys,
I am working on oak indexing and I have the below issue -
There is a customization of an OOTB index cqPageLucene. We are adding some additional paths to index by adding properties "includedPaths=/content/commerce/offers" and "querypaths=/content/commerce/offers"
Else, the index is exactly the same as OOTB index.
Following Index Names -
Customization of an OOTB index. These are indicated by appending -custom- followed by a numerical identifier to the original index name. For example: /oak:index/cqPageLucene-custom-1
However, the deployment of the above index is leading to AEM Sites Search not working on the authoring site.
Removing the index is fixing the problem.
We tried below 2 approaches to fix the problem -
But ideally even the first index name cqPageLucene-custom-1 is correct and should have worked!
BR,
Nagesh
Solved! Go to Solution.
Views
Replies
Total Likes
Hi @NageshRaja ,
In this case you enabled indexing of nodes only under /content/commerce/offers.
By default, cqPageLucene is indexing everything (according to the definition) under root except paths in excludedPaths(/var, /etc/replication, /etc/workflow/instances, /jcr:system).
Why did you need to customize queryPaths and includedPaths?
Try to create custom index like com.cqPageLucene-0-custom-1 and configure it with "includedPaths=/content/commerce/offers" and "querypaths=/content/commerce/offers".
Best regards,
Kostiantyn Diachenko.
Hi @NageshRaja
Could you verify if the following entries are present in your _oak_index(.content.xml) within the repository?
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:oak="http://jackrabbit.apache.org/oak/ns/1.0" xmlns:cq="http://www.day.com/jcr/cq/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0" xmlns:rep="internal"
jcr:mixinTypes="[rep:AccessControllable]"
jcr:primaryType="nt:unstructured">
<socialLucene/>
<cmLucene-2/>
<slingeventJob/>
<jcrLanguage/>
<cqTagLucene-3/>
<versionStoreIndex/>
<repMembers/>
<assetPrefixNodename-1/>
<cqReportsLucene/>
<commerceLucene/>
<damAssetStateIndex-4/>
<counter/>
<authorizables/>
<internalVerificationLucene/>
<formsTemplateLucene/>
<externalPrincipalNames/>
<slingQuickSites-1/>
<cqProjectLucene/>
<acPrincipalName/>
<uuid/>
<ntBaseLucene-2/>
<fragments-7/>
<experienceFragmentsIndex-3/>
<repAccessControllableDamLucene-1/>
<ntFileFolderLucene/>
<pathReference/>
<rep:policy/>
<ntFolderDamLucene-6/>
<workflowDataLucene-2/>
<graphqlConfig-2/>
<cqPayloadPath/>
<appsLibsLucene/>
<nodetypeLucene/>
<nodetype/>
<reference/>
<screensSmartSyncJcrPrimaryType/>
<principalName/>
<repTokenIndex/>
<damCollectionLucene-4/>
<externalId/>
<damAssetLucene-8/>
<slingSitemaps-1/>
<authorizableId/>
<cqPageLucene-custom-1
jcr:primaryType="oak:QueryIndexDefinition"
async="[async,nrt]"
compatVersion="{Long}2"
evaluatePathRestrictions="{Boolean}true"
excludedPaths="[/var,/etc/replication,/etc/workflow/instances,/jcr:system]"
includedPaths="[/content/commerce/offers]"
queryPaths="[/content/commerce/offers]"
reindex="{Boolean}false"
reindexCount="{Long}1"
type="lucene">
<aggregates jcr:primaryType="nt:unstructured">
<cq:Page jcr:primaryType="nt:unstructured">
<include0
jcr:primaryType="nt:unstructured"
path="jcr:content"
relativeNode="{Boolean}true"/>
</cq:Page>
<nt:file jcr:primaryType="nt:unstructured">
<include0
jcr:primaryType="nt:unstructured"
path="jcr:content"/>
</nt:file>
<cq:PageContent jcr:primaryType="nt:unstructured">
<include0
jcr:primaryType="nt:unstructured"
path="*"/>
<include1
jcr:primaryType="nt:unstructured"
path="*/*"/>
<include2
jcr:primaryType="nt:unstructured"
path="*/*/*"/>
<include3
jcr:primaryType="nt:unstructured"
path="*/*/*/*"/>
</cq:PageContent>
</aggregates>
<indexRules jcr:primaryType="nt:unstructured">
<cq:Page
jcr:primaryType="nt:unstructured"
includePropertyTypes="all">
<properties jcr:primaryType="nt:unstructured">
<cqLastModified
jcr:primaryType="nt:unstructured"
name="jcr:content/cq:lastModified"
ordered="{Boolean}true"
propertyIndex="{Boolean}true"
type="Date"/>
<jcrTitle
jcr:primaryType="nt:unstructured"
name="jcr:content/jcr:title"
nodeScopeIndex="{Boolean}true"
propertyIndex="{Boolean}true"
type="String"
useInSpellcheck="{Boolean}true"
useInSuggest="{Boolean}true"/>
<pageTitle
jcr:primaryType="nt:unstructured"
name="jcr:content/pageTitle"
nodeScopeIndex="{Boolean}true"
propertyIndex="{Boolean}true"
type="String"
useInSpellcheck="{Boolean}true"
useInSuggest="{Boolean}true"/>
<navTitle
jcr:primaryType="nt:unstructured"
name="jcr:content/navTitle"
nodeScopeIndex="{Boolean}true"
propertyIndex="{Boolean}true"
type="String"
useInSpellcheck="{Boolean}true"
useInSuggest="{Boolean}true"/>
<nodeName
jcr:primaryType="nt:unstructured"
name=":nodeName"
nodeScopeIndex="{Boolean}true"
propertyIndex="{Boolean}true"
type="String"
useInSpellcheck="{Boolean}true"
useInSuggest="{Boolean}true"/>
<cqLastRolledoutBy
jcr:primaryType="nt:unstructured"
name="jcr:content/cq:lastRolledoutBy"
propertyIndex="{Boolean}true"
type="String"/>
<location
jcr:primaryType="nt:unstructured"
name="jcr:content/location"
notNullCheckEnabled="{Boolean}true"
propertyIndex="{Boolean}true"
type="String"/>
</properties>
</cq:Page>
</indexRules>
</cqPageLucene-custom-1>
<packageLucene/>
<screensContentJcrPrimaryType/>
</jcr:root>
Then you should have the following entry in ui.apps filter.xml as well.
<filter root="/oak:index/cqPageLucene-custom-1" mode="update_properties"/>
Thanks,
Asutosh Jena
Hi @NageshRaja ,
In this case you enabled indexing of nodes only under /content/commerce/offers.
By default, cqPageLucene is indexing everything (according to the definition) under root except paths in excludedPaths(/var, /etc/replication, /etc/workflow/instances, /jcr:system).
Why did you need to customize queryPaths and includedPaths?
Try to create custom index like com.cqPageLucene-0-custom-1 and configure it with "includedPaths=/content/commerce/offers" and "querypaths=/content/commerce/offers".
Best regards,
Kostiantyn Diachenko.
yes @Asutosh_Jena_ the cqPageLucene-custom-1 is present as is.
Views
Replies
Total Likes
Hey @Rohan_Garg, please check your inbox for the same! The approach #2 worked for us, I have also sent you the logs for the same.
Views
Replies
Total Likes
Hi @NageshRaja, I tried to use the OTB lucene index with some custom paths and had no problem! However, creating a custom index with your custom paths would be the best way to go as suggested by @konstantyn_diachenko
Is there any particular reason why you are looking to override only OTB index definition?
Regards,
Rohan Garg
Views
Likes
Replies
Views
Likes
Replies
Views
Likes
Replies
Views
Likes
Replies