otis        2003/10/13 07:25:55

  Modified:    src/java/org/apache/lucene/index SegmentReader.java
  Log:
  - Changed code to use IndexWriter.WRITE_LOCK_NAME.
  - Cleaned up indentation a bit.
  
  Revision  Changes    Path
  1.12      +28 -22    
jakarta-lucene/src/java/org/apache/lucene/index/SegmentReader.java
  
  Index: SegmentReader.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-lucene/src/java/org/apache/lucene/index/SegmentReader.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- SegmentReader.java        25 Sep 2003 22:01:51 -0000      1.11
  +++ SegmentReader.java        13 Oct 2003 14:25:54 -0000      1.12
  @@ -68,6 +68,11 @@
   import org.apache.lucene.store.Directory;
   import org.apache.lucene.util.BitVector;
   
  +/**
  + * FIXME: Describe class <code>SegmentReader</code> here.
  + *
  + * @version $Id$
  + */
   final class SegmentReader extends IndexReader {
     private boolean closeDirectory = false;
     private String segment;
  @@ -82,7 +87,7 @@
   
     InputStream freqStream;
     InputStream proxStream;
  -  
  +
     // Compound File Reader when based on a compound file segment
     CompoundFileReader cfsReader;
   
  @@ -94,21 +99,21 @@
     private Hashtable norms = new Hashtable();
   
     SegmentReader(SegmentInfo si, boolean closeDir)
  -       throws IOException {
  +    throws IOException {
       this(si);
       closeDirectory = closeDir;
     }
   
     SegmentReader(SegmentInfo si)
  -       throws IOException {
  +    throws IOException {
       super(si.dir);
       segment = si.name;
   
       // Use compound file directory for some files, if it exists
       Directory cfsDir = directory;
       if (directory.fileExists(segment + ".cfs")) {
  -        cfsReader = new CompoundFileReader(directory, segment + ".cfs");
  -        cfsDir = cfsReader;
  +      cfsReader = new CompoundFileReader(directory, segment + ".cfs");
  +      cfsDir = cfsReader;
       }
   
       // No compound file exists - use the multi-file format
  @@ -128,18 +133,19 @@
       openNorms(cfsDir);
     }
   
  -  
  +
     final synchronized void doClose() throws IOException {
       if (deletedDocsDirty) {
         synchronized (directory) {               // in- & inter-process sync
  -        new Lock.With(directory.makeLock("commit.lock"), 
IndexWriter.COMMIT_LOCK_TIMEOUT) {
  -            public Object doBody() throws IOException {
  -              deletedDocs.write(directory, segment + ".tmp");
  -              directory.renameFile(segment + ".tmp", segment + ".del");
  -              directory.touchFile("segments");
  -              return null;
  -            }
  -          }.run();
  +        new Lock.With(directory.makeLock("IndexWriter.COMMIT_LOCK_NAME"),
  +          IndexWriter.COMMIT_LOCK_TIMEOUT) {
  +          public Object doBody() throws IOException {
  +            deletedDocs.write(directory, segment + ".tmp");
  +            directory.renameFile(segment + ".tmp", segment + ".del");
  +            directory.touchFile("segments");
  +            return null;
  +          }
  +        }.run();
         }
         deletedDocsDirty = false;
       }
  @@ -153,7 +159,7 @@
         proxStream.close();
   
       closeNorms();
  -    
  +
       if (cfsReader != null)
         cfsReader.close();
   
  @@ -168,7 +174,7 @@
     static final boolean usesCompoundFile(SegmentInfo si) throws IOException {
       return si.dir.fileExists(si.name + ".cfs");
     }
  -  
  +
     final synchronized void doDelete(int docNum) throws IOException {
       if (deletedDocs == null)
         deletedDocs = new BitVector(maxDoc());
  @@ -179,15 +185,15 @@
     final Vector files() throws IOException {
       Vector files = new Vector(16);
       final String ext[] = new String[] {
  -        "cfs", "fnm", "fdx", "fdt", "tii", "tis", "frq", "prx", "del"
  +      "cfs", "fnm", "fdx", "fdt", "tii", "tis", "frq", "prx", "del"
       };
  -    
  +
       for (int i=0; i<ext.length; i++) {
  -        String name = segment + "." + ext[i];
  -        if (directory.fileExists(name)) 
  -            files.addElement(name);
  +      String name = segment + "." + ext[i];
  +      if (directory.fileExists(name))
  +        files.addElement(name);
       }
  -    
  +
       for (int i = 0; i < fieldInfos.size(); i++) {
         FieldInfo fi = fieldInfos.fieldInfo(i);
         if (fi.isIndexed)
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to