You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by dk...@apache.org on 2022/06/21 00:39:03 UTC

[sling-org-apache-sling-app-cms] branch master updated (0f36c263 -> 072350ef)

This is an automated email from the ASF dual-hosted git repository.

dklco pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git


    from 0f36c263 Update building.md (#15)
     new 0dceb9d4 Minor - removing unused import
     new 072350ef SLING-11223 - Further index optimizations

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../apache/sling/cms/core/models/StartContent.java |  1 -
 feature/src/main/features/cms/cms.json             |  2 +-
 reference/bnd.bnd                                  |  8 +++-
 .../apache/sling/cms/reference/models/Search.java  |  2 +-
 .../sling:Page/properties/hideInSitemap.json       |  7 ++++
 .../sling:Page/properties/publishDate.json         |  8 ++++
 ui/bnd.bnd                                         | 14 ++++++-
 .../resources/jcr_root/oak%3Aindex/ntBase.json     | 45 ----------------------
 .../oak%3Aindex/slingResourceSuperType.json        |  5 ---
 .../ntHierarchyNode.json                           |  0
 .../{oak%3Aindex => oak:index}/slingComponent.json |  0
 .../{oak%3Aindex => oak:index}/slingFile.json      | 12 ------
 .../{oak%3Aindex => oak:index}/slingPage.json      | 43 ++++++---------------
 .../{oak%3Aindex => oak:index}/slingTaxonomy.json  |  6 ---
 14 files changed, 49 insertions(+), 104 deletions(-)
 create mode 100644 reference/src/main/resources/jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/hideInSitemap.json
 create mode 100644 reference/src/main/resources/jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/publishDate.json
 delete mode 100644 ui/src/main/resources/jcr_root/oak%3Aindex/ntBase.json
 delete mode 100644 ui/src/main/resources/jcr_root/oak%3Aindex/slingResourceSuperType.json
 rename ui/src/main/resources/jcr_root/{oak%3Aindex => oak:index}/ntHierarchyNode.json (100%)
 rename ui/src/main/resources/jcr_root/{oak%3Aindex => oak:index}/slingComponent.json (100%)
 rename ui/src/main/resources/jcr_root/{oak%3Aindex => oak:index}/slingFile.json (84%)
 rename ui/src/main/resources/jcr_root/{oak%3Aindex => oak:index}/slingPage.json (74%)
 rename ui/src/main/resources/jcr_root/{oak%3Aindex => oak:index}/slingTaxonomy.json (79%)


[sling-org-apache-sling-app-cms] 02/02: SLING-11223 - Further index optimizations

Posted by dk...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

dklco pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git

commit 072350ef4d4b87c46a33d8c3e02b9f66ae27d291
Author: Dan Klco <kl...@adobe.com>
AuthorDate: Mon Jun 20 20:04:00 2022 -0400

    SLING-11223 - Further index optimizations
---
 feature/src/main/features/cms/cms.json             |  2 +-
 reference/bnd.bnd                                  |  8 +++-
 .../apache/sling/cms/reference/models/Search.java  |  2 +-
 .../sling:Page/properties/hideInSitemap.json       |  7 ++++
 .../sling:Page/properties/publishDate.json         |  8 ++++
 ui/bnd.bnd                                         | 14 ++++++-
 .../resources/jcr_root/oak%3Aindex/ntBase.json     | 45 ----------------------
 .../oak%3Aindex/slingResourceSuperType.json        |  5 ---
 .../ntHierarchyNode.json                           |  0
 .../{oak%3Aindex => oak:index}/slingComponent.json |  0
 .../{oak%3Aindex => oak:index}/slingFile.json      | 12 ------
 .../{oak%3Aindex => oak:index}/slingPage.json      | 43 ++++++---------------
 .../{oak%3Aindex => oak:index}/slingTaxonomy.json  |  6 ---
 13 files changed, 49 insertions(+), 103 deletions(-)

diff --git a/feature/src/main/features/cms/cms.json b/feature/src/main/features/cms/cms.json
index f6fd8b11..6c9a251a 100644
--- a/feature/src/main/features/cms/cms.json
+++ b/feature/src/main/features/cms/cms.json
@@ -6,7 +6,7 @@
         },
         {
             "id": "org.apache.sling:org.apache.sling.cms.ui:${cms-version}",
-            "start-order": "20"
+            "start-order": "19"
         },
         {
             "id": "org.apache.sling:org.apache.sling.cms.core:${cms-version}",
diff --git a/reference/bnd.bnd b/reference/bnd.bnd
index f0ad403f..0bc4047f 100644
--- a/reference/bnd.bnd
+++ b/reference/bnd.bnd
@@ -1,2 +1,8 @@
-Sling-Initial-Content: jcr_root;ignoreImportProviders:=xml,jcr_root/content/apache.json;overwrite:=false;uninstall:=false;path:=/content/apache,jcr_root/etc/taxonomy/reference.json;overwrite:=false;uninstall:=false;path:=/etc/taxonomy/reference,jcr_root;ignoreImportProviders:=xml,jcr_root/apps/reference;overwrite:=true;uninstall:=true;path:=/apps/reference,jcr_root/static/clientlibs/reference;overwrite:=true;ignoreImportProviders:=xml;path:=/static/clientlibs/reference,jcr_root/conf/asf. [...]
+Sling-Initial-Content: jcr_root/apps/reference;overwrite:=true;uninstall:=true;path:=/apps/reference,\
+    jcr_root/conf/asf.json;overwrite:=true;ignoreImportProviders:=xml;path:=/conf/asf,\
+    jcr_root/content/apache.json;overwrite:=false;uninstall:=false;path:=/content/apache,\
+    jcr_root/etc/taxonomy/reference.json;overwrite:=false;uninstall:=false;path:=/etc/taxonomy/reference,\
+    jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/hideInSitemap.json;overwrite:=true;path:=/oak:index/slingPage/indexRules/sling:Page/properties/hideInSitemap,\
+    jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/publishDate.json;overwrite:=true;path:=/oak:index/slingPage/indexRules/sling:Page/properties/publishDate,\
+    jcr_root/static/clientlibs/reference;overwrite:=true;ignoreImportProviders:=xml;path:=/static/clientlibs/reference
 Sling-Model-Packages: org.apache.sling.cms.reference.models,org.apache.sling.cms.reference.forms.impl
\ No newline at end of file
diff --git a/reference/src/main/java/org/apache/sling/cms/reference/models/Search.java b/reference/src/main/java/org/apache/sling/cms/reference/models/Search.java
index 6fd1bdf3..40ba5855 100644
--- a/reference/src/main/java/org/apache/sling/cms/reference/models/Search.java
+++ b/reference/src/main/java/org/apache/sling/cms/reference/models/Search.java
@@ -77,7 +77,7 @@ public class Search {
 
         resolver = searchService.getResourceResolver(request);
 
-        String query = "SELECT * FROM [sling:Page] AS p WHERE [jcr:content/sling:published]=true AND p.[jcr:content/hideInSitemap] <> true AND ISDESCENDANTNODE(p, '"
+        String query = "SELECT * FROM [sling:Page] AS p WHERE [jcr:content/sling:published]=true AND (p.[jcr:content/hideInSitemap] <> true OR [jcr:content/hideInSitemap] IS NULL) AND ISDESCENDANTNODE(p, '"
                 + basePath + "') AND CONTAINS(p.*, '" + term + "')";
         log.debug("Searching for pages with {} under {} with query: {}", term, basePath, query);
         Iterator<Resource> res = resolver.findResources(query, Query.JCR_SQL2);
diff --git a/reference/src/main/resources/jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/hideInSitemap.json b/reference/src/main/resources/jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/hideInSitemap.json
new file mode 100644
index 00000000..eadf480d
--- /dev/null
+++ b/reference/src/main/resources/jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/hideInSitemap.json
@@ -0,0 +1,7 @@
+{
+  "jcr:primaryType": "nt:unstructured",
+  "propertyIndex": true,
+  "name": "jcr:content/hideInSitemap",
+  "type": "Boolean",
+  "nullCheckEnabled": true
+}
diff --git a/reference/src/main/resources/jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/publishDate.json b/reference/src/main/resources/jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/publishDate.json
new file mode 100644
index 00000000..403cd390
--- /dev/null
+++ b/reference/src/main/resources/jcr_root/oak:index/slingPage/indexRules/sling:Page/properties/publishDate.json
@@ -0,0 +1,8 @@
+{
+  "jcr:primaryType": "nt:unstructured",
+  "propertyIndex": true,
+  "name": "jcr:content/publishDate",
+  "type": "String",
+  "nullCheckEnabled": true,
+  "ordered": true
+}
diff --git a/ui/bnd.bnd b/ui/bnd.bnd
index afd3c18a..ba52afba 100644
--- a/ui/bnd.bnd
+++ b/ui/bnd.bnd
@@ -1,3 +1,15 @@
 Sling-Nodetypes: SLING-INF/nodetypes/nodetypes.cnd
-Sling-Initial-Content: jcr_root;overwriteProperties:=true;overwrite:=false;ignoreImportProviders:=xml,jcr_root/conf/global.json;overwrite:=true;ignoreImportProviders:=xml;path:=/conf/global,jcr_root/etc/taxonomy;overwrite:=false;uninstall:=true;path:=/etc/taxonomy,jcr_root/oak%3Aindex;overwrite:=false;uninstall:=true;path:=/oak:index,jcr_root/libs/sling-cms;overwrite:=true;uninstall:=true;path:=/libs/sling-cms,jcr_root/libs/sling/thumbnails;overwrite:=true;uninstall:=true;path:=/libs/sli [...]
+Sling-Initial-Content: jcr_root;overwriteProperties:=true;overwrite:=false;ignoreImportProviders:=xml,\
+    jcr_root/conf/global.json;overwrite:=true;ignoreImportProviders:=xml;path:=/conf/global,\
+    jcr_root/etc/taxonomy;overwrite:=false;path:=/etc/taxonomy,\
+    jcr_root/libs/sling-cms;overwrite:=true;path:=/libs/sling-cms,\
+    jcr_root/libs/sling/thumbnails;overwrite:=true;path:=/libs/sling/thumbnails,\
+    jcr_root/oak:index/ntHierarchyNode.json;overwrite:=true;path:=/oak:index/ntHierarchyNode,\
+    jcr_root/oak:index/slingComponent.json;overwrite:=true;path:=/oak:index/slingComponent,\
+    jcr_root/oak:index/slingFile.json;overwrite:=true;path:=/oak:index/slingFile,\
+    jcr_root/oak:index/slingPage.json;overwrite:=true;path:=/oak:index/slingPage,\
+    jcr_root/oak:index/slingTaxonomy.json;overwrite:=true;path:=/oak:index/slingTaxonomy,\
+    jcr_root/static/clientlibs/sling-cms;overwrite:=true;path:=/static/clientlibs/sling-cms;ignoreImportProviders:=xml,\
+    jcr_root/static/clientlibs/sling-cms-editor;overwrite:=true;path:=/static/clientlibs/sling-cms-editor;ignoreImportProviders:=xml,\
+    jcr_root/static/sling-cms;overwrite:=true;path:=/static/sling-cms;ignoreImportProviders:=xml
 -includeresource: target/frontend/dist
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/oak%3Aindex/ntBase.json b/ui/src/main/resources/jcr_root/oak%3Aindex/ntBase.json
deleted file mode 100644
index 3a50e6a1..00000000
--- a/ui/src/main/resources/jcr_root/oak%3Aindex/ntBase.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
-  "jcr:primaryType": "oak:QueryIndexDefinition",
-  "compatVersion": 2,
-  "type": "lucene",
-  "async": ["async", "nrt"],
-  "evaluatePathRestrictions": false,
-  "excludedPaths": ["/jcr:system"],
-  "indexRules": {
-    "jcr:primaryType": "nt:unstructured",
-    "nt:base": {
-      "jcr:primaryType": "nt:unstructured",
-      "properties": {
-        "jcr:primaryType": "nt:unstructured",
-        "slingTaxonomy": {
-          "jcr:primaryType": "nt:unstructured",
-          "ordered": false,
-          "propertyIndex": true,
-          "name": "sling:taxonomy",
-          "type": "String"
-        },
-        "slingResourceType": {
-          "jcr:primaryType": "nt:unstructured",
-          "ordered": false,
-          "propertyIndex": true,
-          "name": "sling:resourceType",
-          "type": "String"
-        },
-        "slingPublished": {
-          "jcr:primaryType": "nt:unstructured",
-          "ordered": false,
-          "propertyIndex": true,
-          "name": "sling:published",
-          "type": "Boolean"
-        },
-        "slingVanityPath": {
-          "jcr:primaryType": "nt:unstructured",
-          "notNullCheckEnabled": true,
-          "propertyIndex": true,
-          "name": "sling:vanityPath",
-          "type": "String"
-        }
-      }
-    }
-  }
-}
diff --git a/ui/src/main/resources/jcr_root/oak%3Aindex/slingResourceSuperType.json b/ui/src/main/resources/jcr_root/oak%3Aindex/slingResourceSuperType.json
deleted file mode 100644
index 8eb9b0f8..00000000
--- a/ui/src/main/resources/jcr_root/oak%3Aindex/slingResourceSuperType.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "jcr:primaryType": "oak:QueryIndexDefinition",
-  "jcr:name:propertyNames": ["sling:resourceSuperType"],
-  "type": "property"
-}
diff --git a/ui/src/main/resources/jcr_root/oak%3Aindex/ntHierarchyNode.json b/ui/src/main/resources/jcr_root/oak:index/ntHierarchyNode.json
similarity index 100%
rename from ui/src/main/resources/jcr_root/oak%3Aindex/ntHierarchyNode.json
rename to ui/src/main/resources/jcr_root/oak:index/ntHierarchyNode.json
diff --git a/ui/src/main/resources/jcr_root/oak%3Aindex/slingComponent.json b/ui/src/main/resources/jcr_root/oak:index/slingComponent.json
similarity index 100%
rename from ui/src/main/resources/jcr_root/oak%3Aindex/slingComponent.json
rename to ui/src/main/resources/jcr_root/oak:index/slingComponent.json
diff --git a/ui/src/main/resources/jcr_root/oak%3Aindex/slingFile.json b/ui/src/main/resources/jcr_root/oak:index/slingFile.json
similarity index 84%
rename from ui/src/main/resources/jcr_root/oak%3Aindex/slingFile.json
rename to ui/src/main/resources/jcr_root/oak:index/slingFile.json
index cc221060..1f21a3f6 100644
--- a/ui/src/main/resources/jcr_root/oak%3Aindex/slingFile.json
+++ b/ui/src/main/resources/jcr_root/oak:index/slingFile.json
@@ -27,10 +27,7 @@
         "jcr:primaryType": "nt:unstructured",
         "jcrDescription": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "analyzed": true,
           "name": "jcr:content/jcr:description"
         },
@@ -49,20 +46,14 @@
         },
         "jcrTitle": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "analyzed": true,
           "name": "jcr:content/jcr:title",
           "boost": 2
         },
         "nodeName": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "name": ":nodeName",
           "type": "String"
         },
@@ -74,10 +65,7 @@
         },
         "slingTaxonomy": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "analyzed": true,
           "name": "jcr:content/sling:taxonomy"
         }
diff --git a/ui/src/main/resources/jcr_root/oak%3Aindex/slingPage.json b/ui/src/main/resources/jcr_root/oak:index/slingPage.json
similarity index 74%
rename from ui/src/main/resources/jcr_root/oak%3Aindex/slingPage.json
rename to ui/src/main/resources/jcr_root/oak:index/slingPage.json
index 0db94979..1e06bede 100644
--- a/ui/src/main/resources/jcr_root/oak%3Aindex/slingPage.json
+++ b/ui/src/main/resources/jcr_root/oak:index/slingPage.json
@@ -13,36 +13,22 @@
         "jcr:primaryType": "nt:unstructured",
         "relativeNode": true,
         "path": "jcr:content"
-      }
-    },
-    "nt:file": {
-      "jcr:primaryType": "nt:unstructured",
-      "include0": {
-        "jcr:primaryType": "nt:unstructured",
-        "path": "jcr:content"
-      }
-    },
-    "nt:unstructured": {
-      "jcr:primaryType": "nt:unstructured",
-      "include0": {
-        "jcr:primaryType": "nt:unstructured",
-        "path": "*"
       },
       "include1": {
         "jcr:primaryType": "nt:unstructured",
-        "path": "*/*"
+        "path": "jcr:content/*"
       },
       "include2": {
         "jcr:primaryType": "nt:unstructured",
-        "path": "*/*/*"
+        "path": "jcr:content/*/*"
       },
       "include3": {
         "jcr:primaryType": "nt:unstructured",
-        "path": "*/*/*/*"
+        "path": "jcr:content/*/*/*"
       },
       "include4": {
         "jcr:primaryType": "nt:unstructured",
-        "path": "*/*/*/*/*"
+        "path": "jcr:content/*/*/*/*"
       }
     }
   },
@@ -54,19 +40,13 @@
         "jcr:primaryType": "nt:unstructured",
         "jcrDescription": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "analyzed": true,
           "name": "jcr:content/jcr:description"
         },
         "jcrTitle": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "analyzed": true,
           "name": "jcr:content/jcr:title",
           "type": "String",
@@ -74,10 +54,7 @@
         },
         "nodeName": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "name": ":nodeName",
           "type": "String"
         },
@@ -102,18 +79,22 @@
         },
         "slingTaxonomy": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "analyzed": true,
-          "name": "jcr:content/sling:taxonomy"
+          "name": "jcr:content/sling:taxonomy",
+          "type": "String"
         },
         "slingTemplate": {
           "jcr:primaryType": "nt:unstructured",
           "propertyIndex": true,
           "name": "jcr:content/sling:template",
           "type": "String"
+        },
+        "allProperties": {
+          "jcr:primaryType": "nt:unstructured",
+          "isRegexp": true,
+          "propertyIndex": true,
+          "name": "jcr:content/\\w*"
         }
       }
     }
diff --git a/ui/src/main/resources/jcr_root/oak%3Aindex/slingTaxonomy.json b/ui/src/main/resources/jcr_root/oak:index/slingTaxonomy.json
similarity index 79%
rename from ui/src/main/resources/jcr_root/oak%3Aindex/slingTaxonomy.json
rename to ui/src/main/resources/jcr_root/oak:index/slingTaxonomy.json
index 7147f6b9..9e072920 100644
--- a/ui/src/main/resources/jcr_root/oak%3Aindex/slingTaxonomy.json
+++ b/ui/src/main/resources/jcr_root/oak:index/slingTaxonomy.json
@@ -13,20 +13,14 @@
         "jcr:primaryType": "nt:unstructured",
         "jcrTitle": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "analyzed": true,
           "name": "jcr:title",
           "type": "String"
         },
         "nodeName": {
           "jcr:primaryType": "nt:unstructured",
-          "nodeScopeIndex": true,
-          "useInSuggest": true,
           "propertyIndex": true,
-          "useInSpellcheck": true,
           "name": ":nodeName",
           "type": "String"
         }


[sling-org-apache-sling-app-cms] 01/02: Minor - removing unused import

Posted by dk...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

dklco pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git

commit 0dceb9d4752475eb4219a205d919c4813f48e179
Author: Dan Klco <kl...@adobe.com>
AuthorDate: Sun Apr 17 00:03:19 2022 -0400

    Minor - removing unused import
---
 core/src/main/java/org/apache/sling/cms/core/models/StartContent.java | 1 -
 1 file changed, 1 deletion(-)

diff --git a/core/src/main/java/org/apache/sling/cms/core/models/StartContent.java b/core/src/main/java/org/apache/sling/cms/core/models/StartContent.java
index ea5a1b87..027f9928 100644
--- a/core/src/main/java/org/apache/sling/cms/core/models/StartContent.java
+++ b/core/src/main/java/org/apache/sling/cms/core/models/StartContent.java
@@ -42,7 +42,6 @@ import javax.jcr.query.Row;
 import org.apache.sling.api.SlingHttpServletRequest;
 import org.apache.sling.api.resource.Resource;
 import org.apache.sling.api.resource.ResourceResolver;
-import org.apache.sling.cms.CMSConstants;
 import org.apache.sling.models.annotations.Model;
 import org.osgi.annotation.versioning.ProviderType;
 import org.slf4j.Logger;