knguyen     2005/06/01 15:57:11 CEST

  Modified files:        (Branch: JAHIA-4-1-BRANCH)
    src/java/org/jahia/services/search JahiaSearchBaseService.java 
  Log:
  - cleaner way to check that the index exist before opening it.
  
  Revision        Changes    Path
  1.42.2.15.2.14  +19 -2     
jahia/src/java/org/jahia/services/search/JahiaSearchBaseService.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/src/java/org/jahia/services/search/JahiaSearchBaseService.java.diff?r1=1.42.2.15.2.13&r2=1.42.2.15.2.14&f=h
  
  
  
  Index: JahiaSearchBaseService.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/src/java/org/jahia/services/search/Attic/JahiaSearchBaseService.java,v
  retrieving revision 1.42.2.15.2.13
  retrieving revision 1.42.2.15.2.14
  diff -u -r1.42.2.15.2.13 -r1.42.2.15.2.14
  --- JahiaSearchBaseService.java       1 Jun 2005 10:45:09 -0000       
1.42.2.15.2.13
  +++ JahiaSearchBaseService.java       1 Jun 2005 13:57:11 -0000       
1.42.2.15.2.14
  @@ -362,6 +362,15 @@
           }
       }
   
  +    /**
  +     * Wake up the main index thread
  +     */
  +    public void notifyMainIndexThread(){
  +        synchronized(lock){
  +            lock.notifyAll();
  +        }
  +    }
  +
       
//--------------------------------------------------------------------------
       /**
        * index afield
  @@ -937,7 +946,12 @@
           boolean result = false;
   
           try {
  -            writer = getIndexWriter (siteID, this.indexAnalyzer, false);
  +            String indexDirectory = this.getSiteIndex(siteID);
  +            if ( !IndexReader.indexExists(indexDirectory) ){
  +                writer = getIndexWriter (siteID, this.indexAnalyzer, true);
  +            } else {
  +                writer = getIndexWriter (siteID, this.indexAnalyzer, false);
  +            }
               if (writer == null)
                   return false;
               writer.setUseCompoundFile(true);
  @@ -1000,6 +1014,10 @@
   
           logger.debug("search service is running in Thread name=" + 
Thread.currentThread().getName());
   
  +        if ( this.isInitialized() && this.localIndexing ){
  +            this.optimizeAllIndexes();
  +        }
  +        
           SiteIndexer siteIndexer = null;
           Integer siteId = null;
           HashMap siteIndexers = new HashMap();
  @@ -1691,7 +1709,6 @@
           }
       }
   
  -
       protected class SiteIndexer {
   
           private int UNDEFINED = 0;
  

Reply via email to