-
Notifications
You must be signed in to change notification settings - Fork 25.6k
Closed
Labels
:Search/SearchSearch-related issues that do not fall into other categoriesSearch-related issues that do not fall into other categories>bugTeam:SearchMeta label for search teamMeta label for search teampriority:highA label for assessing bug priority to be used by ES engineersA label for assessing bug priority to be used by ES engineers
Description
Elasticsearch Version
9.0.x
Installed Plugins
No response
Java Version
bundled
OS Version
any
Problem Description
Lucene 10.1.0 on ES 9.0.x exhibits EOF for certain queries.
In particular, it must be a boolean query with a multi-claused must_not disjunction.
Steps to Reproduce
N/A (yet)
Here is an example query:
{
"bool": {
"filter": [
{
"bool": {
"filter": [
"< multiple term clauses>"
],
"must_not": [
{
"terms": {
"<field>": [
"<many_values>"
]
}
},
{
"terms": {
"<field>": [
"<many_values>"
]
}
},
{
"term": {
"<field>": {
"value": "<value>"
}
}
},
{
"terms": {
"<field>": [
"<many_values>"
]
}
}
]
}
}
],
"must": {
"query": {
"multi_match": {
"fields": [
"<many_fields>"
],
"minimum_should_match": "custom should match",
"query": "<QUERY>",
"type": "most_fields"
}
}
}
}
}
Logs (if relevant)
Caused by: java.io.EOFException: read past EOF (pos=2147483647): MemorySegmentIndexInput(path="<PATH>.cfs") [slice=_ou.nvd] [slice=randomaccess]
at org.apache.lucene.core@10.1.0/org.apache.lucene.store.MemorySegmentIndexInput.handlePositionalIOOBE(MemorySegmentIndexInput.java:119)
at org.apache.lucene.core@10.1.0/org.apache.lucene.store.MemorySegmentIndexInput$SingleSegmentImpl.readByte(MemorySegmentIndexInput.java:762)
at org.apache.lucene.core@10.1.0/org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3.longValue(Lucene90NormsProducer.java:399)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.TermScorer.score(TermScorer.java:93)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.DisjunctionSumScorer.score(DisjunctionSumScorer.java:43)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.DisjunctionScorer.score(DisjunctionScorer.java:176)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.FilterScorable.score(FilterScorable.java:45)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.MaxScoreBulkScorer.scoreNonEssentialClauses(MaxScoreBulkScorer.java:402)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.MaxScoreBulkScorer.scoreInnerWindowWithFilter(MaxScoreBulkScorer.java:208)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.MaxScoreBulkScorer.scoreInnerWindow(MaxScoreBulkScorer.java:147)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.MaxScoreBulkScorer.score(MaxScoreBulkScorer.java:128)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.ReqExclBulkScorer.score(ReqExclBulkScorer.java:66)
at org.elasticsearch.server@9.0.3/org.elasticsearch.search.internal.CancellableBulkScorer.score(CancellableBulkScorer.java:46)
at org.elasticsearch.server@9.0.3/org.elasticsearch.search.internal.ContextIndexSearcher.searchLeaf(ContextIndexSearcher.java:461)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:810)
at org.elasticsearch.server@9.0.3/org.elasticsearch.search.internal.ContextIndexSearcher.search(ContextIndexSearcher.java:388)
at org.elasticsearch.server@9.0.3/org.elasticsearch.search.internal.ContextIndexSearcher.lambda$search$3(ContextIndexSearcher.java:368)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.TaskExecutor$Task.run(TaskExecutor.java:173)
at org.apache.lucene.core@10.1.0/org.apache.lucene.search.TaskExecutor.invokeAll(TaskExecutor.java:111)
at org.elasticsearch.server@9.0.3/org.elasticsearch.search.internal.ContextIndexSearcher.search(ContextIndexSearcher.java:372)
at org.elasticsearch.server@9.0.3/org.elasticsearch.search.internal.ContextIndexSearcher.search(ContextIndexSearcher.java:339)
at org.elasticsearch.server@9.0.3/org.elasticsearch.search.query.QueryPhase.addCollectorsAndSearch(QueryPhase.java:212)
... 15 more
Metadata
Metadata
Assignees
Labels
:Search/SearchSearch-related issues that do not fall into other categoriesSearch-related issues that do not fall into other categories>bugTeam:SearchMeta label for search teamMeta label for search teampriority:highA label for assessing bug priority to be used by ES engineersA label for assessing bug priority to be used by ES engineers