You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Dawid Weiss (Jira)" <ji...@apache.org> on 2022/05/23 12:44:00 UTC

[jira] [Commented] (LUCENE-10589) Fix corner case in TestKnnVectorQuery.testRandomWithFilter

    [ https://issues.apache.org/jira/browse/LUCENE-10589?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17540935#comment-17540935 ] 

Dawid Weiss commented on LUCENE-10589:
--------------------------------------

I don't know anything about this code area but thank you for following up on jenkins failures, [~tomoko]!

> Fix corner case in TestKnnVectorQuery.testRandomWithFilter
> ----------------------------------------------------------
>
>                 Key: LUCENE-10589
>                 URL: https://issues.apache.org/jira/browse/LUCENE-10589
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Tomoko Uchida
>            Priority: Minor
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> {{TestKnnVectorQuery.testRandomWithFilter}} can fail with java.lang.UnsupportedOperationException.
> Reproducible command
> {code:java}
> ./gradlew test --tests TestKnnVectorQuery.testRandomWithFilter -Dtests.seed=1DA39B92702DAC45 -Dtests.multiplier=3
> {code}
> {code:java}
> org.apache.lucene.search.TestKnnVectorQuery > testRandomWithFilter FAILED
>     java.lang.UnsupportedOperationException: exact search is not supported
>         at __randomizedtesting.SeedInfo.seed([1DA39B92702DAC45:6BEAC2197AD96AE0]:0)
>         at org.apache.lucene.search.TestKnnVectorQuery$ThrowingKnnVectorQuery.exactSearch(TestKnnVectorQuery.java:715)
>         at org.apache.lucene.search.KnnVectorQuery.searchLeaf(KnnVectorQuery.java:151)
>         at org.apache.lucene.search.KnnVectorQuery.rewrite(KnnVectorQuery.java:108)
>         at org.apache.lucene.search.ConstantScoreQuery.rewrite(ConstantScoreQuery.java:44)
>         at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:789)
>         at org.apache.lucene.tests.search.AssertingIndexSearcher.rewrite(AssertingIndexSearcher.java:69)
>         at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:803)
>         at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:685)
>         at org.apache.lucene.search.IndexSearcher.searchAfter(IndexSearcher.java:667)
>         at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:584)
>         at org.apache.lucene.search.TestKnnVectorQuery.testRandomWithFilter(TestKnnVectorQuery.java:556)
> {code}
> In some edge cases (depending on the random seed), [KnnVectorQuery.java#147|https://github.com/apache/lucene/blob/fe9d26178d033f585c08a5e86708063ac0ec0c9e/lucene/core/src/java/org/apache/lucene/search/KnnVectorQuery.java#L147] becomes false, and then `exactSearch()` is called.
> The upper bound of [the test range query (filter)|https://github.com/apache/lucene/blob/fe9d26178d033f585c08a5e86708063ac0ec0c9e/lucene/core/src/test/org/apache/lucene/search/TestKnnVectorQuery.java#L554] could be 200 (the max value of "tag" field + 1) instead of lower + 150 to make it "unrestrictive"?



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org