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

Shai Erera commented on LUCENE-2804:
------------------------------------

Ok I agree. Currently there is only one 'testEmptyIndex()' test that makes use 
of newDirectory(Directory). But perhaps after we've converted more tests to not 
use FSDirectory.open, more will use it.

> check all tests that use FSDirectory.open
> -----------------------------------------
>
>                 Key: LUCENE-2804
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2804
>             Project: Lucene - Java
>          Issue Type: Test
>            Reporter: Robert Muir
>
> In LUCENE-2471 we were discussing the copyBytes issue, and Shai and I had a 
> discussion about how we could prevent such bugs in the future.
> One thing that lead to the bug existing in our code for so long, was that it 
> only happened on windows (e.g. never failed in hudson!)
> This was because the bug only happened if you were copying from 
> SimpleFSDirectory, and the test used FSDirectory.open
> Today the situation is improving: most tests use newDirectory() which is 
> random by default and never use FSDir.open,
> it always uses SimpleFS or NIOFS so that the same random seed will reproduce 
> across both windows and unix.
> So I think we need to review all uses of FSDirectory.open in our tests, and 
> minimize these.
> In general tests should use newDirectory().
> If the test comes with say a zip-file and wants to explicitly open stuff from 
> disk, I think it should open the contents with say SimpleFSDir,
> and then call newDirectory(Directory) to copy into a new "random" 
> implementation for actual testing. This method already exists:
> {noformat}
>   /**
>    * Returns a new Dictionary instance, with contents copied from the
>    * provided directory. See {...@link #newDirectory()} for more
>    * information.
>    */
>   public static MockDirectoryWrapper newDirectory(Directory d) throws 
> IOException {
> {noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to