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;