You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by fo...@apache.org on 2020/06/27 20:24:53 UTC
svn commit: r1879284 - in /jackrabbit/oak/trunk/oak-search-elastic/src:
main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticIndexHelper.java
test/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticFullTextAsyncTest.java
Author: fortino
Date: Sat Jun 27 20:24:53 2020
New Revision: 1879284
URL: http://svn.apache.org/viewvc?rev=1879284&view=rev
Log:
OAK-9123: add missing mapping for :fulltext
Modified:
jackrabbit/oak/trunk/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticIndexHelper.java
jackrabbit/oak/trunk/oak-search-elastic/src/test/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticFullTextAsyncTest.java
Modified: jackrabbit/oak/trunk/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticIndexHelper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticIndexHelper.java?rev=1879284&r1=1879283&r2=1879284&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticIndexHelper.java (original)
+++ jackrabbit/oak/trunk/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticIndexHelper.java Sat Jun 27 20:24:53 2020
@@ -129,6 +129,11 @@ class ElasticIndexHelper {
mappingBuilder.startObject(FieldNames.PATH_DEPTH)
.field("type", "integer")
.endObject();
+ // TODO: to increase efficiency, we could potentially remove this and use a multi match query when needed
+ mappingBuilder.startObject(FieldNames.FULLTEXT)
+ .field("type", "text")
+ .field("analyzer", "oak_analyzer")
+ .endObject();
// TODO: the mapping below is for features currently not supported. These need to be reviewed
// when the specific features will be implemented
// mappingBuilder.startObject(FieldNames.SUGGEST)
Modified: jackrabbit/oak/trunk/oak-search-elastic/src/test/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticFullTextAsyncTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search-elastic/src/test/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticFullTextAsyncTest.java?rev=1879284&r1=1879283&r2=1879284&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search-elastic/src/test/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticFullTextAsyncTest.java (original)
+++ jackrabbit/oak/trunk/oak-search-elastic/src/test/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticFullTextAsyncTest.java Sat Jun 27 20:24:53 2020
@@ -111,7 +111,9 @@ public class ElasticFullTextAsyncTest ex
public void testDefaultAnalyzer() throws Exception {
IndexDefinitionBuilder builder = createIndex("analyzed_field");
builder.async("async");
- builder.indexRule("nt:base").property("analyzed_field").analyzed();
+ builder.indexRule("nt:base")
+ .property("analyzed_field")
+ .analyzed().nodeScopeIndex();
setIndex(UUID.randomUUID().toString(), builder);
root.commit();
@@ -123,8 +125,12 @@ public class ElasticFullTextAsyncTest ex
root.commit();
assertEventually(() -> {
+ assertQuery("//*[jcr:contains(@analyzed_field, 'SUN.JPG')] ", XPATH, Collections.singletonList("/test/a"));
assertQuery("//*[jcr:contains(@analyzed_field, 'Sun')] ", XPATH, Collections.singletonList("/test/a"));
assertQuery("//*[jcr:contains(@analyzed_field, 'jpg')] ", XPATH, Collections.singletonList("/test/a"));
+ assertQuery("//*[jcr:contains(., 'SUN.jpg')] ", XPATH, Collections.singletonList("/test/a"));
+ assertQuery("//*[jcr:contains(., 'sun')] ", XPATH, Collections.singletonList("/test/a"));
+ assertQuery("//*[jcr:contains(., 'jpg')] ", XPATH, Collections.singletonList("/test/a"));
});
}