From f5ef7f222e29639cd017dfc38e1c406fd42360a2 Mon Sep 17 00:00:00 2001 From: orbiter Date: Wed, 11 Jun 2008 09:54:58 +0000 Subject: [PATCH] - fixed a bug in parser (directory paths had not been recognized) - no access check when a search is made only local without snippet fetch - added comment and status message in resourceObserver (this takes very long at startup time!) git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@4911 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- .classpath | 2 -- htroot/yacysearch.html | 1 - htroot/yacysearch.java | 3 +++ source/de/anomic/plasma/plasmaParserDocument.java | 3 +++ source/de/anomic/tools/diskUsage.java | 1 + source/de/anomic/yacy/resourceObserver.java | 1 + 6 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.classpath b/.classpath index 0b3c1d47d..d4a0f2fa4 100644 --- a/.classpath +++ b/.classpath @@ -8,8 +8,6 @@ - - diff --git a/htroot/yacysearch.html b/htroot/yacysearch.html index 7050ec08a..ba8c8e0c8 100644 --- a/htroot/yacysearch.html +++ b/htroot/yacysearch.html @@ -66,7 +66,6 @@ - diff --git a/htroot/yacysearch.java b/htroot/yacysearch.java index e97a35b7e..3a1d1ba97 100644 --- a/htroot/yacysearch.java +++ b/htroot/yacysearch.java @@ -179,6 +179,8 @@ public class yacysearch { TreeSet trackerHandles = sb.localSearchTracker.get(client); if (trackerHandles == null) trackerHandles = new TreeSet(); boolean block = false; + if (global || fetchSnippets) { + // in case that we do a global search or we want to fetch snippets, we check for DoS cases if (trackerHandles.tailSet(new Long(System.currentTimeMillis() - 3000)).size() > 1) try { Thread.sleep(3000); block = true; @@ -191,6 +193,7 @@ public class yacysearch { Thread.sleep(30000); block = true; } catch (InterruptedException e) { e.printStackTrace(); } + } if ((!block) && (post == null || post.get("cat", "href").equals("href"))) { diff --git a/source/de/anomic/plasma/plasmaParserDocument.java b/source/de/anomic/plasma/plasmaParserDocument.java index 728d8a05f..f4406cb41 100644 --- a/source/de/anomic/plasma/plasmaParserDocument.java +++ b/source/de/anomic/plasma/plasmaParserDocument.java @@ -372,6 +372,9 @@ dc_rights } else { hyperlinks.put(url, entry.getValue()); } + } else { + // a path to a directory + hyperlinks.put(url, entry.getValue()); } } } diff --git a/source/de/anomic/tools/diskUsage.java b/source/de/anomic/tools/diskUsage.java index 271a115da..80f21710f 100644 --- a/source/de/anomic/tools/diskUsage.java +++ b/source/de/anomic/tools/diskUsage.java @@ -276,6 +276,7 @@ nextLine: String dir; for (int i = 0; i < fileList.length; i++) { + // ATTENTION! THIS LOOP NEEDS A TIME-OUT if (fileList[i].isDirectory()) { try { dir = fileList[i].getCanonicalPath(); diff --git a/source/de/anomic/yacy/resourceObserver.java b/source/de/anomic/yacy/resourceObserver.java index b05bca584..5f009b2d9 100644 --- a/source/de/anomic/yacy/resourceObserver.java +++ b/source/de/anomic/yacy/resourceObserver.java @@ -70,6 +70,7 @@ public final class resourceObserver { public resourceObserver(plasmaSwitchboard sb) { this.sb = sb; + this.log.logInfo("initializing the resource observer"); du = new diskUsage(sb); if (!du.getUsable ())