<div dir="ltr"><div class="gmail_default" style="font-family:'courier new',monospace">Hello,</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">I'm testing how PmWiki, using sqlite recipe as page store, can handle one hundred thousands of (short) pages (and maybe more later if I can make it work the way I need).</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">In my case, for a dictionary simulation, I define a group for Word and another group for Quote. A pagelist in Word pages will print out the linked quotes.</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">I import 70k words (word, sense, etymology, synonym, etc., all in ptv, to be templated later) and 90k quotes (the quote, source, word) and sqlite database is now about 100 mo (for 100k « pages ») and .pageindex is about 40 mo.</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">Main issue encountered is how .pageindex is handling its indexation task. It sounds like it definitely stops working when the amount of _new_ data is too big. </div><div class="gmail_default" style="font-family:'courier new',monospace">I mean, the process looks like it evaluates first the amount of new data, rather than starting to index, thus, in case there is too much new data, you get a memory error message, and the game is over. I wish the pageindexing would work, and work, and work, no matter how much new data there is to index, until its done.</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">If the amount of new data is acceptable, then he will start making the index. Not in one time : you will have to ask him several times, but at the end (search 10 times, more or less), you know its done, and you have not encoutered memory issue.</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">To import all my data, I have had no other choice than to split my original big files in 10 or 20 pieces. </div><div class="gmail_default" style="font-family:'courier new',monospace">After each partial import, I have had to run a few searches to activate the process, until I am sure the indexation is done (check explorer until size is not growing anymore). </div><div class="gmail_default" style="font-family:'courier new',monospace">In other words, no way to import 50 megas of new data and to get it indexed. Have to split them first. </div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">At the end of the story, it works, and it's not working bad at all. Hans' TextExtract (limited to Word group) does a nice job as well :</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style><font face="courier new, monospace">133 results from 90 pages, 72236 pages searched in 1.95 seconds</font><br></div><div class="gmail_default" style><font face="courier new, monospace"><br></font></div><div class="gmail_default" style="font-family:'courier new',monospace">(regex doesn't work, but you can target anchored text).</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">It's working, yes, but I don't feel safe. Mostly because of the trouble of getting .pageindex done. Biggest problem is I can not delete the current .pageindex wich took me more than one hour to get done.</div><div class="gmail_default" style="font-family:'courier new',monospace">In case I would delete this file, then the amount of _new_ data (all 100 mo sqlite data would look like new) would be far to vast, PmWiki would run out of memory on every search and the indexation process would never start, failing first.</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">Is there something to do with the native search engine to avoid it failing each time amount of new data is too big ?</div><div class="gmail_default" style="font-family:'courier new',monospace">Or how to secure the pageindex processing ?</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">ImportText has an internal mechanism to avoid hitting PHP's "maximum execution time" limits : « this script will perform imports for up to 15 seconds (as set by the $ImportTime variable). If it's unable to process all of the imported files within that period of time, it closes out its work and queues the remaining files to be processed on subsequent requests. »</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">Would it be possible/easy/pertinent to implement such memory protection to the native search engine ?</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">Related question is : as I'm using sqlite for storing a big amount of short and very short pages, why use the pmwiki .pageindex process rather than performing a fulltext search ? </div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">Thank you for your advices,</div><div class="gmail_default" style="font-family:'courier new',monospace">Gilles.</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div><br></div>-- <br><div class="gmail_signature"><div><br></div><div>---------------------------------------</div>| A | de la langue française<br>| B | <a href="http://www.languefrancaise.net/" target="_blank">http://www.languefrancaise.net</a><br>| C | <a href="mailto:languefrancaise@gmail.com" target="_blank">languefrancaise@gmail.com</a><br>---------------------------------------<div>       @bobmonamour</div><div>---------------------------------------</div></div>
</div>