lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexander Gutkin (JIRA)" <>
Subject [jira] Updated: (LUCENE-531) RAMDirectory creation from existing FSDirectory throws IOException ("is a directory")
Date Sat, 25 Mar 2006 22:32:20 GMT
     [ ]

Alexander Gutkin updated LUCENE-531:

    Attachment: patch.txt

I am attaching a trivial patch (generated against the current Lucene trunk). The patch includes
the following:

       (1) Safer implementation of FSDirectory.list()
       (2) A test case in org/apache/lucene/index/store/

Current trunk build and tests pass successfully using this patch. Note that the patch is still
not very satisfactory because, in theory, it would be nice if FSDirectory returned only the
valid Lucene index files.

> RAMDirectory creation from existing FSDirectory throws IOException ("is a directory")
> -------------------------------------------------------------------------------------
>          Key: LUCENE-531
>          URL:
>      Project: Lucene - Java
>         Type: Bug
>   Components: Store
>     Versions: 1.9, 2.0
>  Environment: OS: Fedora 5 
> 2.6.15-1.2054_FC5 #1 Tue Mar 14 15:48:33 EST 2006 i686 athlon i386 GNU/Linux
> java version "1.5.0_06"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
> Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode, sharing)
>     Reporter: Alexander Gutkin
>     Priority: Minor
>  Attachments: patch.txt
> If you generate an index somewhere on the filesystem in location DIR and later on
> add some other (not index-related) directories to DIR, then loading that index using
> FSDirectory will succeed. However, if you then attempt to load that index into
> RAM using RAMDirectory API, RAMDirectory constructor will throw an exception
> because it assumes that FSDirectory will return a list of files residing in DIR. The
> problem with the trunk is that FSDirectory.list() implementation does not check
> for extraneous entities in the index directory, hence breaking RAMDirectory
> construction.
> I encountered this issue because I started storing some of my tiny indexes under
> version control. Loading these indexes using RAMDirectory fails because of
> the CVS/subversion directories (.svn/.cvs) which are created within the index
> directories.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message