summaryrefslogtreecommitdiff
path: root/lib/exe/indexer.php
diff options
context:
space:
mode:
authorTom N Harris <tnharris@whoopdedo.org>2006-11-17 13:30:32 +0100
committerTom N Harris <tnharris@whoopdedo.org>2006-11-17 13:30:32 +0100
commitd5b233026fa2930e4c6ee362ebdfd3586b2f3fb8 (patch)
treed706907a5106ec596279c0655f891bb698203d29 /lib/exe/indexer.php
parent9046bb990b22efdc8a26f2b002f603c22f73f038 (diff)
downloadrpg-d5b233026fa2930e4c6ee362ebdfd3586b2f3fb8.tar.gz
rpg-d5b233026fa2930e4c6ee362ebdfd3586b2f3fb8.tar.bz2
Indexer asian language fixes and speed-ups
Make Chinese and Japanese work better with the new indexer. Some missing punctuation added to utf8_stripspecials. Misc. other changes to make indexing faster. The indexes will expire on backend upgrades, so you don't have to delete *.indexed darcs-hash:20061117123032-6942e-774b38e08234928c49b37e40addba375acf67ac0.gz
Diffstat (limited to 'lib/exe/indexer.php')
-rw-r--r--lib/exe/indexer.php18
1 files changed, 13 insertions, 5 deletions
diff --git a/lib/exe/indexer.php b/lib/exe/indexer.php
index f5fc07bc3..057ab06f1 100644
--- a/lib/exe/indexer.php
+++ b/lib/exe/indexer.php
@@ -13,6 +13,9 @@ require_once(DOKU_INC.'inc/events.php');
session_write_close(); //close session
if(!defined('NL')) define('NL',"\n");
+// Version tag used to force rebuild on upgrade
+define(INDEXER_VERSION, 1);
+
// keep running after browser closes connection
@ignore_user_abort(true);
@@ -136,10 +139,15 @@ function runIndexer(){
if(!$ID) return false;
// check if indexing needed
- $last = @filemtime(metaFN($ID,'.indexed'));
- if($last > @filemtime(wikiFN($ID))){
- print "runIndexer(): index for $ID up to date".NL;
- return false;
+ $idxtag = metaFN($ID,'.indexed');
+ if(@file_exists($idxtag)){
+ if(io_readFile($idxtag) >= INDEXER_VERSION){
+ $last = @filemtime($idxtag);
+ if($last > @filemtime(wikiFN($ID))){
+ print "runIndexer(): index for $ID up to date".NL;
+ return false;
+ }
+ }
}
// try to aquire a lock
@@ -163,7 +171,7 @@ function runIndexer(){
idx_addPage($ID);
// we're finished - save and free lock
- io_saveFile(metaFN($ID,'.indexed'),' ');
+ io_saveFile(metaFN($ID,'.indexed'),INDEXER_VERSION);
@rmdir($lock);
print "runIndexer(): finished".NL;
return true;