GeoPointNumericTermsEnum.init assertion trip [LUCENE-7107]
- Dominant language
- Java
- Stars
- 3.6k
- Forks
- 1.4k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 88
Description
From http://jenkins.thetaphi.de/job/Lucene-Solr-6.x-Linux/132/
It reproduces on current master (56ca641b5b50dd9133753410d40dda0632e873f5) for me:
```
[junit4:pickseed] Seed property 'tests.seed' already defined: BEAE73A5A546349E
[junit4] says olá! Master seed: BEAE73A5A546349E
[junit4] Executing 1 suite with 1 JVM.
[junit4]
[junit4] Started J0 PID(15946@localhost).
[junit4] Suite: org.apache.lucene.spatial.geopoint.search.TestGeoPointQuery
[junit4] 2> Márta 15, 2016 6:03:09 A.M. com.carrotsearch.randomizedtesting.RandomizedRunner$QueueUncaughtExceptionsHandler uncaughtException
[junit4] 2> WARNING: Uncaught exception in thread: Thread[T0,5,TGRP-TestGeoPointQuery]
[junit4] 2> java.lang.AssertionError
[junit4] 2> at __randomizedtesting.SeedInfo.seed([BEAE73A5A546349E]:0)
[junit4] 2> at org.apache.lucene.spatial.geopoint.search.GeoPointNumericTermsEnum.(GeoPointNumericTermsEnum.java:51)
[junit4] 2> at org.apache.lucene.spatial.geopoint.search.GeoPointTermsEnum.newInstance(GeoPointTermsEnum.java:52)
[junit4] 2> at org.apache.lucene.spatial.geopoint.search.GeoPointMultiTermQuery.getTermsEnum(GeoPointMultiTermQuery.java:94)
[junit4] 2> at org.apache.lucene.spatial.geopoint.search.GeoPointTermQueryConstantScoreWrapper$1.scorer(GeoPointTermQueryConstantScoreWrapper.java:94)
[junit4] 2> at org.apache.lucene.search.Weight.bulkScorer(Weight.java:135)
[junit4] 2> at org.apache.lucene.search.LRUQueryCache$CachingWrapperWeight.bulkScorer(LRUQueryCache.java:644)
[junit4] 2> at org.apache.lucene.search.AssertingWeight.bulkScorer(AssertingWeight.java:68)
[junit4] 2> at org.apache.lucene.search.BooleanWeight.optionalBulkScorer(BooleanWeight.java:231)
[junit4] 2> at org.apache.lucene.search.BooleanWeight.booleanScorer(BooleanWeight.java:297)
[junit4] 2> at org.apache.lucene.search.BooleanWeight.bulkScorer(BooleanWeight.java:364)
[junit4] 2> at org.apache.lucene.search.LRUQueryCache$CachingWrapperWeight.cache(LRUQueryCache.java:593)
[junit4] 2> at org.apache.lucene.search.LRUQueryCache$CachingWrapperWeight.bulkScorer(LRUQueryCache.java:641)
[junit4] 2> at org.apache.lucene.search.AssertingWeight.bulkScorer(AssertingWeight.java:68)
[junit4] 2> at org.apache.lucene.search.BooleanWeight.requiredBulkScorer(BooleanWeight.java:273)
[junit4] 2> at org.apache.lucene.search.BooleanWeight.booleanScorer(BooleanWeight.java:326)
[junit4] 2> at org.apache.lucene.search.BooleanWeight.bulkScorer(BooleanWeight.java:364)
[junit4] 2> at org.apache.lucene.search.LRUQueryCache$CachingWrapperWeight.bulkScorer(LRUQueryCache.java:644)
[junit4] 2> at org.apache.lucene.search.AssertingWeight.bulkScorer(AssertingWeight.java:68)
[junit4] 2> at org.apache.lucene.search.AssertingWeight.bulkScorer(AssertingWeight.java:68)
[junit4] 2> at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:666)
[junit4] 2> at org.apache.lucene.search.AssertingIndexSearcher.search(AssertingIndexSearcher.java:91)
[junit4] 2> at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:473)
[junit4] 2> at org.apache.lucene.spatial.util.BaseGeoPointTestCase$VerifyHits.test(BaseGeoPointTestCase.java:500)
[junit4] 2> at org.apache.lucene.spatial.util.BaseGeoPointTestCase$2._run(BaseGeoPointTestCase.java:766)
[junit4] 2> at org.apache.lucene.spatial.util.BaseGeoPointTestCase$2.run(BaseGeoPointTestCase.java:633)
[junit4] 2>
[junit4] 2> NOTE: reproduce with: ant test -Dtestcase=TestGeoPointQuery -Dtests.method=testRandomMedium -Dtests.seed=BEAE73A5A546349E -Dtests.multiplier=3 -Dtests.slow=true -Dtests.locale=ga -Dtests.timezone=America/Antigua -Dtests.asserts=true -Dtests.file.encoding=UTF-8
[junit4] ERROR 24.7s | TestGeoPointQuery.testRandomMedium <<<
```
It's this assertion ... maybe it's invalid?:
```
assert rangeBounds.isEmpty() == false;
```
---
Migrated from [LUCENE-7107](https://issues.apache.org/jira/browse/LUCENE-7107) by Michael McCandless (@mikemccand)
Contributor guide
Research direction
Start by reproducing TestGeoPointQuery.testRandomMedium with the supplied ant command and seed. Read GeoPointNumericTermsEnum.java at the constructor assertion, then trace GeoPointTermsEnum.newInstance and GeoPointMultiTermQuery.getTermsEnum. Done means the reproduced test no longer trips the rangeBounds assertion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- search
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 42/100