[
https://issues.apache.org/jira/browse/LUCENE-6205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14336256#comment-14336256
]
ASF subversion and git services commented on LUCENE-6205:
---------------------------------------------------------
Commit 1662188 from [~mikemccand] in branch 'dev/branches/lucene_solr_4_10'
[ https://svn.apache.org/r1662188 ]
LUCENE-6205: don't let doc values updates write in one thread at the same time
as a merge kicking off in another
> DV updates can hit FileNotFoundException due to concurrency bug
> ---------------------------------------------------------------
>
> Key: LUCENE-6205
> URL: https://issues.apache.org/jira/browse/LUCENE-6205
> Project: Lucene - Core
> Issue Type: Bug
> Reporter: Michael McCandless
> Assignee: Michael McCandless
> Priority: Blocker
> Fix For: 4.10.4, 5.0, Trunk, 5.1
>
> Attachments: LUCENE-6205.patch
>
>
> Jenkins has hit this a few times recently, e.g.:
> {noformat}
> [junit4] Suite: org.apache.lucene.index.TestBinaryDocValuesUpdates
> [junit4] 2> Jan 28, 2015 11:49:24 AM
> com.carrotsearch.randomizedtesting.RandomizedRunner$QueueUncaughtExceptionsHandler
> uncaughtException
> [junit4] 2> WARNUNG: Uncaught exception in thread: Thread[Lucene Merge
> Thread #1,5,TGRP-TestBinaryDocValuesUpdates]
> [junit4] 2> org.apache.lucene.index.MergePolicy$MergeException:
> java.nio.file.NoSuchFileException: _4_1.fnm in dir=RAMDirectory@5dcf7f8a
> lockFactory=org.apache.lucene.store.SingleInstanceLockFactory@ccb4148
> [junit4] 2> at
> __randomizedtesting.SeedInfo.seed([5EC20FA2CD1E68B8]:0)
> [junit4] 2> at
> org.apache.lucene.index.ConcurrentMergeScheduler.handleMergeException(ConcurrentMergeScheduler.java:641)
> [junit4] 2> at
> org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:609)
> [junit4] 2> Caused by: java.nio.file.NoSuchFileException: _4_1.fnm in
> dir=RAMDirectory@5dcf7f8a
> lockFactory=org.apache.lucene.store.SingleInstanceLockFactory@ccb4148
> [junit4] 2> at
> org.apache.lucene.store.MockDirectoryWrapper.openInput(MockDirectoryWrapper.java:655)
> [junit4] 2> at
> org.apache.lucene.store.Directory.openChecksumInput(Directory.java:110)
> [junit4] 2> at
> org.apache.lucene.codecs.lucene50.Lucene50FieldInfosFormat.read(Lucene50FieldInfosFormat.java:113)
> [junit4] 2> at
> org.apache.lucene.index.SegmentReader.initFieldInfos(SegmentReader.java:155)
> [junit4] 2> at
> org.apache.lucene.index.SegmentReader.<init>(SegmentReader.java:119)
> [junit4] 2> at
> org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:3935)
> [junit4] 2> at
> org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3559)
> [junit4] 2> at
> org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:549)
> [junit4] 2> at
> org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:587)
> [junit4] 2>
> [junit4] 2> NOTE: reproduce with: ant test
> -Dtestcase=TestBinaryDocValuesUpdates -Dtests.method=testManyReopensAndFields
> -Dtests.seed=5EC20FA2CD1E68B8 -Dtests.slow=true -Dtests.locale=de_DE
> -Dtests.timezone=Europe/Samara -Dtests.asserts=true
> -Dtests.file.encoding=UTF-8
> {noformat}
> It repros only after substantial beasting.
> It's a concurrency issue between one thread kicking off a merge, and another
> thread resolving doc values updates.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]