Author: j16sdiz
Date: 2009-01-02 13:10:46 +0000 (Fri, 02 Jan 2009)
New Revision: 24880
Modified:
trunk/plugins/XMLSpider/IndexWriter.java
trunk/plugins/XMLSpider/XMLSpider.java
trunk/plugins/XMLSpider/db/Page.java
Log:
standalone writer use readonly file
Modified: trunk/plugins/XMLSpider/IndexWriter.java
===================================================================
--- trunk/plugins/XMLSpider/IndexWriter.java 2009-01-02 10:35:14 UTC (rev
24879)
+++ trunk/plugins/XMLSpider/IndexWriter.java 2009-01-02 13:10:46 UTC (rev
24880)
@@ -54,7 +54,6 @@
public synchronized void makeIndex(PerstRoot perstRoot) throws
Exception {
logMINOR = Logger.shouldLog(Logger.MINOR, this);
-
perstRoot.getStorage().beginThreadTransaction(Storage.COOPERATIVE_TRANSACTION);
try {
time_taken = System.currentTimeMillis();
@@ -77,7 +76,6 @@
tProducedIndex = System.currentTimeMillis();
} finally {
- perstRoot.getStorage().endThreadTransaction();
}
}
@@ -360,7 +358,8 @@
Set<Page> pages = term.getPages();
for (Page page : pages) {
- TermPosition termPos =
page.getTermPosition(term);
+ TermPosition termPos =
page.getTermPosition(term, false);
+ if (termPos == null) continue;
synchronized (termPos) {
synchronized (page) {
@@ -556,6 +555,7 @@
db.setProperty("perst.alternative.btree", true);
db.setProperty("perst.string.encoding", "UTF-8");
db.setProperty("perst.concurrent.iterator", true);
+ db.setProperty("perst.file.readonly", true);
db.open(arg[0]);
PerstRoot root = (PerstRoot) db.getRoot();
@@ -606,4 +606,4 @@
System.out.println(" sd = " + (long)
Math.sqrt(meanSqTime - meanTime * meanTime) + "ms");
}
}
-}
\ No newline at end of file
+}
Modified: trunk/plugins/XMLSpider/XMLSpider.java
===================================================================
--- trunk/plugins/XMLSpider/XMLSpider.java 2009-01-02 10:35:14 UTC (rev
24879)
+++ trunk/plugins/XMLSpider/XMLSpider.java 2009-01-02 13:10:46 UTC (rev
24880)
@@ -643,7 +643,7 @@
if (word.length() < 3)
return;
Term term = getTermByWord(word, true);
- TermPosition termPos = page.getTermPosition(term);
+ TermPosition termPos = page.getTermPosition(term, true);
termPos.addPositions(position);
}
}
Modified: trunk/plugins/XMLSpider/db/Page.java
===================================================================
--- trunk/plugins/XMLSpider/db/Page.java 2009-01-02 10:35:14 UTC (rev
24879)
+++ trunk/plugins/XMLSpider/db/Page.java 2009-01-02 13:10:46 UTC (rev
24880)
@@ -74,12 +74,12 @@
return pageTitle;
}
- public synchronized TermPosition getTermPosition(Term term) {
+ public synchronized TermPosition getTermPosition(Term term, boolean
create) {
if (termPosMap == null)
termPosMap = getStorage().createMap(String.class);
TermPosition tp = termPosMap.get(term.md5);
- if (tp == null) {
+ if (tp == null && create) {
tp = new TermPosition(getStorage());
term.pageSet.add(this);
}
_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs