+1 kudos Steve!

Le mer. 28 déc. 2016 à 10:28, Dawid Weiss <dawid.we...@gmail.com> a écrit :

> Tricky indeed, kudos Steve.
>
> D.
>
> On Wed, Dec 28, 2016 at 10:20 AM, Michael McCandless
> <luc...@mikemccandless.com> wrote:
> > Phew, tricky!  The patch looks good Steve.  Thanks for digging and
> > beasting and finding a separate crab!
> >
> > Mike McCandless
> >
> > http://blog.mikemccandless.com
> >
> >
> > On Tue, Dec 27, 2016 at 10:00 PM, Steve Rowe <sar...@gmail.com> wrote:
> >> Yes, I’ve posted a couple of them on the issue, but they don’t
> reproduce.
> >>
> >> My beasting so far (couple thousand iterations) hasn’t yet reproduced.
> Beasting did find <https://issues.apache.org/jira/browse/LUCENE-7605>
> though.
> >>
> >> I have an idea about what might cause the problem: under multi-threaded
> use, in lookup(), the suggester’s SearcherManager could be re-assigned in
> the middle of an acquire/release cycle as a result of <
> https://issues.apache.org/jira/browse/LUCENE-7564>.  I’m also beasting a
> change to take a local reference and use it for the whole cycle.[1]
> >>
> >> --
> >> Steve
> >> www.lucidworks.com
> >>
> >> [1] Patch to hold SearcherManager constant in
> AnalyzingInfixSuggester.lookup():
> >>
> >> ——
> >> diff --git
> a/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java
> b/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java
> >> index 1e98361..c63726f 100644
> >> ---
> a/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java
> >> +++
> b/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java
> >> @@ -642,7 +642,8 @@ public class AnalyzingInfixSuggester extends Lookup
> implements Closeable {
> >>      // only retrieve the first num hits now:
> >>      Collector c2 = new EarlyTerminatingSortingCollector(c, SORT, num);
> >>      List<LookupResult> results = null;
> >> -    IndexSearcher searcher = searcherMgr.acquire();
> >> +    SearcherManager mgr = searcherMgr; // use local reference to
> perform acquire & release on same SearcherManager
> >> +    IndexSearcher searcher = mgr.acquire();
> >>      try {
> >>        //System.out.println("got searcher=" + searcher);
> >>        searcher.search(finalQuery, c2);
> >> @@ -653,7 +654,7 @@ public class AnalyzingInfixSuggester extends Lookup
> implements Closeable {
> >>        // hits = searcher.search(query, null, num, SORT);
> >>        results = createResults(searcher, hits, num, key, doHighlight,
> matchedTokens, prefixToken);
> >>      } finally {
> >> -      searcherMgr.release(searcher);
> >> +      mgr.release(searcher);
> >>      }
> >>
> >>      //System.out.println((System.currentTimeMillis() - t0) + " msec
> for infix suggest");
> >> ——
> >>
> >>
> >>
> >>> On Dec 26, 2016, at 5:56 PM, Michael McCandless <
> luc...@mikemccandless.com> wrote:
> >>>
> >>> I think (not sure) these failures starting happening after
> >>> https://issues.apache.org/jira/browse/LUCENE-7564 ?
> >>>
> >>> Mike McCandless
> >>>
> >>> http://blog.mikemccandless.com
> >>>
> >>>
> >>> On Mon, Dec 26, 2016 at 4:29 PM, Apache Jenkins Server
> >>> <jenk...@builds.apache.org> wrote:
> >>>> Build: https://builds.apache.org/job/Lucene-Solr-Tests-6.x/628/
> >>>>
> >>>> 1 tests failed.
> >>>> FAILED:
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggesterTest.testRandomNRT
> >>>>
> >>>> Error Message:
> >>>> Captured an uncaught exception in thread: Thread[id=29,
> name=Thread-11, state=RUNNABLE, group=TGRP-AnalyzingInfixSuggesterTest]
> >>>>
> >>>> Stack Trace:
> >>>> com.carrotsearch.randomizedtesting.UncaughtExceptionError: Captured
> an uncaught exception in thread: Thread[id=29, name=Thread-11,
> state=RUNNABLE, group=TGRP-AnalyzingInfixSuggesterTest]
> >>>>        at
> __randomizedtesting.SeedInfo.seed([608DC176393E1CC5:C4A3CFCB61E1C079]:0)
> >>>> Caused by: org.apache.lucene.store.AlreadyClosedException: this
> ReferenceManager is closed
> >>>>        at __randomizedtesting.SeedInfo.seed([608DC176393E1CC5]:0)
> >>>>        at
> org.apache.lucene.search.ReferenceManager.acquire(ReferenceManager.java:98)
> >>>>        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggester.lookup(AnalyzingInfixSuggester.java:645)
> >>>>        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggester.lookup(AnalyzingInfixSuggester.java:457)
> >>>>        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggesterTest$LookupThread.run(AnalyzingInfixSuggesterTest.java:533)
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> Build Log:
> >>>> [...truncated 9362 lines...]
> >>>>   [junit4] Suite:
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggesterTest
> >>>>   [junit4]   2> ??? 26, 2016 1:30:30 ??
> com.carrotsearch.randomizedtesting.RandomizedRunner$QueueUncaughtExceptionsHandler
> uncaughtException
> >>>>   [junit4]   2> WARNING: Uncaught exception in thread:
> Thread[Thread-11,5,TGRP-AnalyzingInfixSuggesterTest]
> >>>>   [junit4]   2> org.apache.lucene.store.AlreadyClosedException: this
> ReferenceManager is closed
> >>>>   [junit4]   2>        at
> __randomizedtesting.SeedInfo.seed([608DC176393E1CC5]:0)
> >>>>   [junit4]   2>        at
> org.apache.lucene.search.ReferenceManager.acquire(ReferenceManager.java:98)
> >>>>   [junit4]   2>        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggester.lookup(AnalyzingInfixSuggester.java:645)
> >>>>   [junit4]   2>        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggester.lookup(AnalyzingInfixSuggester.java:457)
> >>>>   [junit4]   2>        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggesterTest$LookupThread.run(AnalyzingInfixSuggesterTest.java:533)
> >>>>   [junit4]   2>
> >>>>   [junit4]   2> NOTE: reproduce with: ant test
> -Dtestcase=AnalyzingInfixSuggesterTest -Dtests.method=testRandomNRT
> -Dtests.seed=608DC176393E1CC5 -Dtests.multiplier=2 -Dtests.slow=true
> -Dtests.locale=el -Dtests.timezone=SystemV/MST7MDT -Dtests.asserts=true
> -Dtests.file.encoding=US-ASCII
> >>>>   [junit4] ERROR   32.8s J1 |
> AnalyzingInfixSuggesterTest.testRandomNRT <<<
> >>>>   [junit4]    > Throwable #1:
> com.carrotsearch.randomizedtesting.UncaughtExceptionError: Captured an
> uncaught exception in thread: Thread[id=29, name=Thread-11, state=RUNNABLE,
> group=TGRP-AnalyzingInfixSuggesterTest]
> >>>>   [junit4]    >        at
> __randomizedtesting.SeedInfo.seed([608DC176393E1CC5:C4A3CFCB61E1C079]:0)
> >>>>   [junit4]    > Caused by:
> org.apache.lucene.store.AlreadyClosedException: this ReferenceManager is
> closed
> >>>>   [junit4]    >        at
> __randomizedtesting.SeedInfo.seed([608DC176393E1CC5]:0)
> >>>>   [junit4]    >        at
> org.apache.lucene.search.ReferenceManager.acquire(ReferenceManager.java:98)
> >>>>   [junit4]    >        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggester.lookup(AnalyzingInfixSuggester.java:645)
> >>>>   [junit4]    >        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggester.lookup(AnalyzingInfixSuggester.java:457)
> >>>>   [junit4]    >        at
> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggesterTest$LookupThread.run(AnalyzingInfixSuggesterTest.java:533)
> >>>>   [junit4]   2> NOTE: test params are: codec=Asserting(Lucene62):
> {textgrams=PostingsFormat(name=Memory doPackFST= false),
> text=PostingsFormat(name=Memory doPackFST= false),
> contexts=PostingsFormat(name=LuceneVarGapFixedInterval),
> exacttext=PostingsFormat(name=LuceneVarGapFixedInterval)},
> docValues:{payloads=DocValuesFormat(name=Memory),
> textgrams=DocValuesFormat(name=Memory),
> weight=DocValuesFormat(name=Lucene54), text=DocValuesFormat(name=Memory),
> contexts=DocValuesFormat(name=Lucene54),
> exacttext=DocValuesFormat(name=Lucene54)}, maxPointsInLeafNode=846,
> maxMBSortInHeap=6.751687589960355,
> sim=RandomSimilarity(queryNorm=false,coord=crazy): {}, locale=el,
> timezone=SystemV/MST7MDT
> >>>>   [junit4]   2> NOTE: Linux 3.13.0-85-generic amd64/Oracle
> Corporation 1.8.0_102
> (64-bit)/cpus=4,threads=1,free=158780648,total=343932928
> >>>>   [junit4]   2> NOTE: All tests run in this JVM: [TestContextQuery,
> TestSuggestStopFilter, TestPrefixCompletionQuery,
> AnalyzingInfixSuggesterTest]
> >>>>   [junit4] Completed [28/32 (1!)] on J1 in 37.17s, 22 tests, 1 error
> <<< FAILURES!
> >>>>
> >>>> [...truncated 65892 lines...]
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> ---------------------------------------------------------------------
> >>>> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
> >>>> For additional commands, e-mail: dev-h...@lucene.apache.org
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
> >>> For additional commands, e-mail: dev-h...@lucene.apache.org
> >>>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
> >> For additional commands, e-mail: dev-h...@lucene.apache.org
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
> > For additional commands, e-mail: dev-h...@lucene.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
> For additional commands, e-mail: dev-h...@lucene.apache.org
>
>

Reply via email to