You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Thomas Mueller (Jira)" <ji...@apache.org> on 2022/03/14 15:41:00 UTC
[jira] [Assigned] (OAK-9724) Handle duplicate functions gracefully in indexing
[ https://issues.apache.org/jira/browse/OAK-9724?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Thomas Mueller reassigned OAK-9724:
-----------------------------------
Assignee: Thomas Mueller
> Handle duplicate functions gracefully in indexing
> -------------------------------------------------
>
> Key: OAK-9724
> URL: https://issues.apache.org/jira/browse/OAK-9724
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: indexing
> Reporter: Thomas Mueller
> Assignee: Thomas Mueller
> Priority: Major
>
> If the index definition indexes the same function multiple times:
> {noformat}
> "lowercaseNodename":{
> "jcr:primaryType":"nam:nt:unstructured",
> "ordered":true,
> "propertyIndex":true,
> "function":"fn:lower-case(fn:name())"
> },
> "NodeNameLowerCase":{
> "jcr:primaryType":"nam:nt:unstructured",
> "ordered":true,
> "propertyIndex":true,
> "function":"fn:lower-case(fn:name())"
> }
> {noformat}
> Then, currently, indexing fails:
> {noformat}
> java.lang.IllegalArgumentException: DocValuesField ":dvfunction*lower*@:name" appears more than once in this document (only one value is allowed per field)
> at org.apache.lucene.index.SortedDocValuesWriter.addValue(SortedDocValuesWriter.java:62)
> at org.apache.lucene.index.DocValuesProcessor.addSortedField(DocValuesProcessor.java:125)
> at org.apache.lucene.index.DocValuesProcessor.addField(DocValuesProcessor.java:59)
> at org.apache.lucene.index.TwoStoredFieldsConsumers.addField(TwoStoredFieldsConsumers.java:36)
> at org.apache.lucene.index.DocFieldProcessor.processDocument(DocFieldProcessor.java:236)
> at org.apache.lucene.index.DocumentsWriterPerThread.updateDocument(DocumentsWriterPerThread.java:253)
> at org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter.java:455)
> at org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1534)
> at org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1204)
> at org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1185)
> at org.apache.jackrabbit.oak.plugins.index.lucene.writer.DefaultIndexWriter.updateDocument(DefaultIndexWriter.java:93)
> at org.apache.jackrabbit.oak.plugins.index.lucene.writer.DefaultIndexWriter.updateDocument(DefaultIndexWriter.java:54)
> at org.apache.jackrabbit.oak.plugins.index.lucene.writer.MultiplexingIndexWriter.updateDocument(MultiplexingIndexWriter.java:60)
> at org.apache.jackrabbit.oak.plugins.index.lucene.writer.MultiplexingIndexWriter.updateDocument(MultiplexingIndexWriter.java:37)
> at org.apache.jackrabbit.oak.index.indexer.document.LuceneIndexer.writeToIndex(LuceneIndexer.java:108)
> at org.apache.jackrabbit.oak.index.indexer.document.LuceneIndexer.index(LuceneIndexer.java:80)
> {noformat}
> This should be handled gracefully.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)